当前位置:   article > 正文

java.lang.UnsatisfiedLinkError_caused by: java.lang.unsatisfiedlinkerror: dalvik.

caused by: java.lang.unsatisfiedlinkerror: dalvik.system.pathclassloader[dex

以下是我出现的错误

Caused by: java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/com.example.uhf-1/base.apk"],nativeLibraryDirectories=[/data/app/com.example.uhf-1/lib/arm64, /vendor/lib64, /system/lib64]]] couldn't find "libDeviceAPI.so"
  • 1

UnsatisfiedLinkError:链接失败错误
上述错误就是出现了libDeviceAPI.so没有编译进/data/app/com.example.uhf-1/lib/arm64这个目录下

解决:
第一步:
在 项目xxx/app/build.gradle目录下添加 abiFilters sourceSets

android {
***
		defaultConfig{
			****
			 // 设置支持的SO库架构,armeabi是手机通用支持的架构,也可以自己加多别的架构
    		abiFilters 'armeabi'
		}
		sourceSets {
		        main {
		            jniLibs.srcDirs = ['libs']
		            //如果你的也是jnilibs,最好把(jniLibs/armeabi的armeabi目录包含文件复制到libs目录下)
		            //jniLibs.srcDirs = ['jnilibs']  //我使用这个没有编译成功
		        }
		}
***
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16

第二步
在项目下gradle.properties文件下要增加: (没有这个文件可自己创建这个文件)

android.useDeprecatedNdk=true
  • 1

我用这个方法解决了我的这个错误,记录一下

参考文章

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/花生_TL007/article/detail/143249
推荐阅读
相关标签
  

闽ICP备14008679号