2015-10-05 43 views
3

我們在項目的Github頁面上聲明瞭我們的漏洞 - 依賴關係。找不到符號類AndroidExcludedRefs,DisplayLeakService,

debugCompile 'com.squareup.leakcanary:leakcanary-android:1.3.1' 
releaseCompile 'com.squareup.leakcanary:leakcanary-android-no-op:1.3.1' 

到目前爲止,事情工作正常。現在我們就開始排除已知泄漏這樣的:

ExcludedRefs.Builder excludedRefsBuilder = AndroidExcludedRefs.createAppDefaults(); 
excludedRefsBuilder.staticField("com.google.android.chimera.container.a", "a"); 
refWatcher = LeakCanary.install(app, DisplayLeakService.class, excludedRefsBuilder.build()); 

現在,當我們切換到發佈版本的類型,比如AndroidExcludedRefs,DisplayLeakService和ExcludedRefs類不再被發現,作爲「無操作」依賴沒有按」包括他們。

什麼是處理這個最好的方法是什麼?

+0

你有沒有找到解決辦法? – pandre

回答

1

我們的LeakCanary設置在我們的類DevToolsController中實現。爲了解決這個問題,我們把默認的實現放到「debug」源文件夾中,並把「no-op」實現放到「release」源文件夾中。

+1

它讓你想知道爲什麼有一個no-op lib,因爲我們可以將實際的調用放在這些調試/釋放文件夾中以便將它們排除/排除。 – xorgate