是否可以从 Android Gradle 依赖项中排除一个包,这样它就不会最终出现在 APK 中?
作为:
dependencies {
compile('com.facebook.android:facebook-android-sdk:4.17.0') {
exclude package 'com.facebook.share'
}
}
但又不同了,因为“package”不是一个有效的命令。
最佳答案
您不能排除 Artifact 的某些特定部分,因为 Gradle 对其中的内容一无所知。对于 Gradle,它是整体的:您要么包含 Artifact 及其内部的任何内容,要么不包含。
使用 ProGuard 可能会达到您想要的效果。这是构建应用程序发布版本时的常见步骤,您可以指定收缩规则,这将删除不必要的代码。 Android 文档有一个 code shrinking article更多详情。
唯一可能出现的问题是,如果依赖项包含 ProGuard 配置文件本身,则可能无法强制收缩指定保留在那里的内容。但是,我刚刚查看了您询问的 AAR,但似乎并非如此。
关于android - Gradle:排除依赖包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40883974/