首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >android库模块如何在调试版本中引入stetho

android库模块如何在调试版本中引入stetho
EN

Stack Overflow用户
提问于 2020-06-29 23:22:26
回答 1查看 138关注 0票数 1

有android库模块,在调试版本中,它想在发布版本中使用stetho,bot no。我猜它可能会增加对

代码语言:javascript
复制
debugCompile 'com.facebook.stetho:stetho:1.4.1'
debugCompile 'com.uphyca:stetho_realm:2.0.0'

or using 
debugImplementation 'com.facebook.stetho:stetho:1.4.1'. // with latest version
debugImplementation 'com.uphyca:stetho_realm:2.0.0'

问题在于代码需要将StethoInterceptor放在哪里

代码语言:javascript
复制
OkHttpClient.Builder()
    .addNetworkInterceptor(StethoInterceptor())
    .build()

它如何在发布版本中编译没有stetho依赖?

EN

回答 1

Stack Overflow用户

发布于 2020-06-29 23:45:31

请在您的application类中调用以下checkAndInitStetho()方法:

代码语言:javascript
复制
public YourApplication extends Application {

 @Override
    public void onCreate() {
        super.onCreate();
        checkAndInitStetho();
    }


private void checkAndInitStetho() {
        //Stetho integration
        if (BuildConfig.DEBUG) { 
            try {
                SyncTask.executeAndWait(() -> Stetho.initialize(
                        Stetho.newInitializerBuilder(YourApplication.this)
                                .enableDumpapp(Stetho.defaultDumperPluginsProvider(YourApplication.this))
                                .enableWebKitInspector(Stetho.defaultInspectorModulesProvider(YourApplication.this))
                                .build()));
            } catch (Exception e) {
                LOGE(LOG_TAG, "Error on checkAndInitStetho()", e);
            }
        }
    }
}

此外,在创建OkHttpClient.Builder时,应检查其debug模式是否如下所示:-

代码语言:javascript
复制
if (BuildConfig.DEBUG) {
                builder.addNetworkInterceptor(new 
                 StethoInterceptor());
 }

请浏览application类的link

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62641381

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档