使用RenderScript-v8 报错的问题 couldn't find "librsjni.so"

使用AndroidStudio 在应用中使用高斯模糊(blur)效果会用到android 提供的依赖库RenderScript v8 。发现在有的手机报如下错误:

java.lang.UnsatisfiedLinkError:

dalvik.system.PathClassLoader[DexPathList[[zip file
“/data/app/packagename/base.apk”],nativeLibraryDirectories=[/data/app/packagename/lib/arm64,
/vendor/lib64, /system/lib64]]]
couldn’t find “librsjni.so” at java.lang.Runtime.loadLibrary(Runtime.java:366) at

最后搜索发现是因为64位系统手机,在应用安装的时候未将 libblasV8.so librsjni.so libRSSupport.so 拷贝进去。

解决方法:

1、是在 project 根目录下的gradle.properties中添加

android.useDeprecatedNdk=true

2、在app 的build.gradle 中添加

defaultConfig {
...
renderscriptTargetApi 23
renderscriptSupportModeEnabled true
ndk {
    abiFilters "armeabi", "armeabi-v7a", "x86", "mips"
    }
}

就是这句
ndk {
abiFilters “armeabi”, “armeabi-v7a”, “x86”, “mips”
}

这里记录一下

你可能感兴趣的:(Android笔记)