背景
Android开发一般都知道,当so有一些特殊加固操作时,需要让Android Studio在编译的时候不要修改这个so,不然运行的时候会不正常
android {
// xxx
packagingOptions {
doNotStrip "*/*/libxxx.so"
}
}
今天我在修改一个so文件的名称的时候,忘记修改这个配置了,但是最终apk里面的so也没有strip,这就很奇怪了.
结论
当在local.properties中配置ndk.dir或者设置ANDROID_NDK_HOME等让Android studio知道ndk路径的时候,构建系统会增加一个名为transformNativeLibsWithStripDebugSymbolForXXX的任务,这个任务会strip so,当没有设置的时候就不会进行strip so.