請求框架&移動請求

風的王子發表於2016-07-20

小工具

1

代理工具http://facebook.github.io/stetho/ 結合 chrome://inspect/ 瀏覽器

if(BuildConfig.DEBUG) {
            OkHttpClient okHttpClient = new OkHttpClient.Builder().addNetworkInterceptor(new StethoInterceptor())
                    .connectTimeout(60, TimeUnit.SECONDS).readTimeout(60, TimeUnit.SECONDS).build();
            OkHttpUtils.initClient(okHttpClient);
        } else {
            OkHttpClient okHttpClient = new OkHttpClient.Builder()
                    .connectTimeout(60, TimeUnit.SECONDS).readTimeout(60, TimeUnit.SECONDS).build();
            OkHttpUtils.initClient(okHttpClient);
        }

加入gradle配置檔案

    compile 'com.facebook.stetho:stetho:1.3.1'
    compile 'com.facebook.stetho:stetho-okhttp3:1.3.1'
    compile 'com.facebook.stetho:stetho-urlconnection:1.1.0'

–注意需要翻牆才能用,和Charles是一樣的。不過更適合Facebook的風格,web風格。

2

很多情況下我們想方便開發,gradle在開發階段方便使用,比如檢視報文,再生產包上面不用。那麼可以自定義類似BuildConfig 的配置。非常方便

* 在Manifest裡面配置metadata
<meta-data
            android:name="Stetho.Enable"
            android:value="${StethoEnable}"
            />
* 在主App的gradle
  release {
        manifestPlaceholders = [StethoEnable : false]
        }

  debug {
            manifestPlaceholders = [StethoEnable : true]
        }
* Application 裡面程式碼邏輯
boolean enableStetho = getPackageManager().getApplicationInfo(getPackageName(),PackageManager.GET_META_DATA).metaData.getBoolean("Stetho.Enable");
if(enableStetho) {
     。。。。           
} else {
     。。。。           
}

3

activate-power-mode 外掛,在Android studio和autom搜尋外掛安裝。酷炫寫程式碼效果

相關文章