我不应该混淆哪些依赖项?

Which dependencies should i not obfuscate with proguard?

我在我的 android 项目中导入了这些依赖项:

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 文件,该文件会在构建应用程序时与您自己的文件合并。 Google 的图书馆绝对遵循这个规则。您唯一需要担心的是当您使用一些设计不佳的第三方库时。在这种情况下,您必须检查库是否在任何地方使用反射来引用任何方法或 类,在这种情况下,您必须排除这些方法或 类 以防止混淆。