2017-11-25 109 views
0

我進口在我的Android項目中的這些依賴關係:哪個依賴關係應該不會與proguard混淆?

dependencies { 
compile fileTree(include: ['*.jar'], dir: 'libs') 
compile 'com.android.support:appcompat-v7:26.1.0' 
compile 'com.android.support:design:26.1.0' 
compile 'com.google.code.gson:gson:2.8.0' 

compile project(':openCVLibrary330') 
compile 'de.hdodenhof:circleimageview:2.2.0' 

compile 'com.google.android.gms:play-services-ads:11.6.0' 

compile 'com.android.support:recyclerview-v7:26.1.0' 
compile 'com.android.support:cardview-v7:26.1.0' 

}

現在我的問題是:哪些依賴我不應該使用ProGuard混淆,以及如何達到這個結果?

謝謝大家!

回答

0

一般來說,您根本不必擔心這一點。依賴關係隨自己的Proguard文件一起提供,該文件在構建應用程序時與您自己合併。 Google的圖書館肯定遵循這一規則。唯一不用擔心的是當你使用一些設計不好的第三方庫時。在這種情況下,您必須檢查庫是否使用反射來引用任何方法或類,在這種情況下,您必須排除這些方法或類被混淆。

+0

嗯,我明白了。例如,在我的項目中,我使用了第三方庫,如openCV和circleImageView。如果我理解正確,我應該在proguard-rules.pro文件中指定不要通過編寫'-keep class org.opencv。*'來混淆這兩個依賴項?這是正確的語法嗎?非常感謝。 –

+0

是的,那將是正確的語法。 –