https://bbs.csdn.net/topics/392279272?page=1
今天加了android.useDeprecatedNdk=true 这一行现在会报如下提示:
android.useDeprecatedNdk is no longer supported
所以在改成这样
defaultConfig {
applicationId "com.example.osghelloworld"
minSdkVersion 15
targetSdkVersion 29
ndk{
moduleName "osgNativeLib"
abiFilters "arm64-v8a"
//"armeabi","armeabi-v7a","x86"
}
externalNativeBuild {
cmake {
abiFilters "arm64-v8a"
cppFlags "-frtti -fexceptions -std=c++11"
arguments '-DANDROID_PLATFORM=android-16'
//'-DANDROID_TOOLCHAIN=clang', '-DANDROID_STL=stlport_static'
}
}
versionCode 1
versionName "1.0"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}
externalNativeBuild {
cmake {
path file('CMakeLists.txt')
}
}
在大多数情况下,您只需要在 ndk {} 块中指定 abiFilters(如上所示),因为它会指示 Gradle 构建和封装原生库的这些版本。不过,如果您希望控制 Gradle 应当构建的配置,并独立于您希望其封装到 APK 中的配置,请在 defaultConfig.externalNativeBuild.cmake {} 块(或 defaultConfig.externalNativeBuild.ndkBuild {} 块中)配置另一个 abiFilters 标志。Gradle 会构建这些 ABI 配置,不过仅会封装您在 defaultConfig.ndk{} 块中指定的配置。
参考 这个博文 https://blog.csdn.net/joe544351900/article/details/53637549