您当前的位置: 首页 >  Java

柳鲲鹏

暂无认证

  • 0浏览

    0关注

    4642博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

so没有打包进AKP导致java.lang.UnsatisfiedLinkError: dlopen failed: library “lib.so“ not found

柳鲲鹏 发布时间:2021-11-08 20:05:42 ,浏览量:0

  • 具体错误
/AndroidRuntime: FATAL EXCEPTION: BaseActivity
    Process: com.serenegiant.usbcameratest, PID: 5494
    java.lang.UnsatisfiedLinkError: dlopen failed: library "libjpeg-turbo1500.so" not found
        at java.lang.Runtime.loadLibrary0(Runtime.java:1087)
        at java.lang.Runtime.loadLibrary0(Runtime.java:1008)
        at java.lang.System.loadLibrary(System.java:1664)
        at com.serenegiant.usb.UVCCamera.(UVCCamera.java:119)
        at com.serenegiant.usbcameratest.MainActivity$2$1.run(MainActivity.java:143)
        at android.os.Handler.handleCallback(Handler.java:938)
        at android.os.Handler.dispatchMessage(Handler.java:99)
        at android.os.Looper.loop(Looper.java:236)
        at android.os.HandlerThread.run(HandlerThread.java:67)
  • 原因分析

  这种情形一般出现于:app依赖于某个jni项目。你以为jni项目编译过了,app依赖也正确,就可以把so打包到apk?图样图森破。

  • 解决办法

首先在app目录中,搜索so的位置,一般应该是lib。

然后在build.gradle中配置:

android {
	......
	sourceSets {
		main {
			jniLibs.srcDirs = ['libs']
		}
	}

另有参考文章:

https://blog.csdn.net/quantum7/article/details/10850610

关注
打赏
1665724893
查看更多评论
立即登录/注册

微信扫码登录

0.1468s