我的项目有3种不同的buildType,我只需要其中一种来保留其本机库的调试信息。我正在使用com.android.tools.build:gradle:3.1.4
。
我尝试了以下
buildTypes {
debug {
...
}
release {
...
}
unstripped {
...
packagingOptions {
doNotStrip '**/.*so'
}
}
}
但是这会使所有buildType都保留未压缩的库版本。
我还尝试将doNotStrip
模式更改为类似'**/unstripped/*.so'
的方式,但这似乎无济于事,因为docs说路径与APK的根目录有关。
答案 0 :(得分:3)
这是您的解决方法:
提供命令行选项“ doNotStrip
”
在下方添加到您的app/build.gradle
android {
...
if (project.hasProperty("doNotStrip")) {
packagingOptions {
doNotStrip '**/.*so'
}
}
...
}
使用以下命令通过将选项doNotStrip
馈入命令来生成未剥离的APK 。
./gradlew assembleUnstripped -PdoNotStrip
对于其他构建类型,您仍然可以使用常规构建命令。例如
./gradlew assembleDebug
或
./gradlew assembleRelease
但不要将选项doNotStrip
传递给命令。