<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??碼云GVP開源項目 12k star Uniapp+ElementUI 功能強大 支持多語言、二開方便! 廣告
                # 目錄 [TOC] NoHttp初始化需要一個Context,最好在`Application#onCreate()`中初始化,記得在`manifest.xml`中注冊`Application`。 **Application:** ```java package com.yanzhenjie.simple; public class MyApplication extends android.app.Application { @Override public void onCreate() { super.onCreate(); ... } } ``` **manifest.xml:** ```xml ... <application android:name="com.yanzhenjie.simple.MyApplication" ... /> ``` # 默認初始化 如果使用默認始化后,一切采用默認設置。如果你需要配置全局超時時間、緩存、Cookie、底層為OkHttp的話,請看高級初始化。 ```java ... public class MyApplication extends android.app.Application { @Override public void onCreate() { super.onCreate(); NoHttp.initialize(this); // NoHttp默認初始化。 } } ``` # 高級初始化 ## 超時配置 如果不設置,默認全局超時時間是10s。 ```java NoHttp.initialize(this, new NoHttp.Config() .setConnectTimeout(30 * 1000) // 全局連接超時時間,單位毫秒。 .setReadTimeout(30 * 1000) // 全局服務器響應超時時間,單位毫秒。 ); ``` ## 配置緩存, 默認是開啟狀態,且保存在數據庫。 * 設置緩存到數據庫、**禁用緩存** ```java NoHttp.initialize(this, new NoHttp.Config() ... .setCacheStore( new DBCacheStore(this) // 配置緩存到數據庫。 .setEnable(true) // true啟用緩存,fasle禁用緩存。 ) ); ``` * 設置緩存到本地SD卡 如果你想緩存數據到SD卡,那么你需要考慮6.0及以上系統的運行時權限,推薦你看這篇文章:[Android6.0運行時權限最佳實踐](http://blog.csdn.net/yanzhenjie1003/article/details/52503533)。 ```java NoHttp.initialize(this, new NoHttp.Config() ... .setCacheStore( new DiskCacheStore(this) // 配置緩存到SD卡。 ) ); ``` ## 配置Cookie 默認是開啟狀態,保存數據庫,NoHttp暫時沒有提供保存在其它位置的默認實現,開發者可以新建一個類,實現`java`自帶的的`CookieStore`接口。 ```java NoHttp.initialize(this, new NoHttp.Config() ... .setCookieStore( new DBCookieStore(this) .setEnable(false) // true啟用自動維護Cookie,fasle禁用自動維護Cookie。 ) ); ``` ## 配置網絡層 NoHttp的網絡層是通過`NetworkExecutor`接口來配置的,內部提供了一個基于`HttpURLConnection`的接口實現類`URLConnectionNetworkExecutor`,在`NoHttp`項目中用另一個`module`提供了一個基于`OkHttp`的接口實現類`OkHttpNetworkExecutor`,二者選其一即可,關于二者該如何使用選擇請看[項目如何引入NoHttp](http://doc.nohttp.net/222341)。 **值得注意的是:**切換了NoHttp的網絡底層后,NoHttp的上層代碼不需要任何改動,你的應用層代碼也不需要任何改動。 默認采用`HttpURLConnection`的實現做底層,既`URLConnectionNetworkExecutor`。 ```java NoHttp.initialize(this, new NoHttp.Config() ... .setNetworkExecutor(new URLConnectionNetworkExecutor()) // 使用HttpURLConnection做網絡層。 ); ``` 如果要使用OkHttp作為網絡層,請在app的gradle中添加依賴: ```groovy compile 'com.yanzhenjie.nohttp:okhttp:1.1.0' ``` 然后在初始化的時候這么做: ```java NoHttp.initialize(this, new NoHttp.Config() ... .setNetworkExecutor(new OkHttpNetworkExecutor()) // 使用OkHttp做網絡層。 ); ```
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看