百度定位sdk Couldn't load locSDK3 from loader dalvik findLibrary returned null

在反复测试的过程中,程序有时候总会有奇葩问题,昨天晚上刚越到个百度定位的问题,查了好久的log, 发现是 “Couldn't Couldn't load locSDK3 from loader dalvik
重点Log:
ActivityManager(  528): Activity idle: Token{426f00d0 ActivityRecord{42553f80 u0 
04-30 20:58:39.704 V/ActivityManager(  528): Stopping ActivityRecord{42607ab8 u0 com.oppo.launcher/.Launcher}: nowVisible=false waitingVisible=true finishing=false
04-30 20:58:39.704 V/ActivityManager(  528): Stopping ActivityRecord{424d56a0 u0 com.android.settings/.Settings$InputMethodAndLanguageSettingsActivity}: nowVisible=false waitingVisible=true finishing=false
04-30 20:58:39.704 V/ActivityManager(  528): Stopping ActivityRecord{42582a28 u0 com.android.browser/.BrowserActivity}: nowVisible=false waitingVisible=true finishing=false
04-30 20:58:39.706 W/System.err( 1451): java.lang.UnsatisfiedLinkError: Couldn't load locSDK3 from loader dalvik.system.PathClassLoader[DexPathList[dexElements=[zip file "/data/app/xxx-1.apk"],nativeLibraryDirectories=[/data/app-lib/xxx-1, /vendor/lib, /system/lib]]]: findLibrary returned null
04-30 20:58:39.707 W/System.err( 1451):  at java.lang.Runtime.loadLibrary(Runtime.java:359)
04-30 20:58:39.707 W/System.err( 1451):  at java.lang.System.loadLibrary(System.java:514)
04-30 20:58:39.707 W/System.err( 1451):  at com.baidu.location.Jni.<clinit>(Unknown Source)
04-30 20:58:39.707 W/System.err( 1451):  at com.baidu.location.ae.a(Unknown Source)
04-30 20:58:39.707 W/System.err( 1451):  at com.baidu.location.ae.a(Unknown Source)
04-30 20:58:39.707 W/System.err( 1451):  at com.baidu.location.f.a(Unknown Source)
04-30 20:58:39.707 W/System.err( 1451):  at com.baidu.location.ad.handleMessage(Unknown Source)
04-30 20:58:39.707 W/System.err( 1451):  at android.os.Handler.dispatchMessage(Handler.java:99)
04-30 20:58:39.707 W/System.err( 1451):  at android.os.Looper.loop(Looper.java:153)
04-30 20:58:39.708 W/System.err( 1451):  at android.app.ActivityThread.main(ActivityThread.java:5320)
04-30 20:58:39.708 W/System.err( 1451):  at java.lang.reflect.Method.invokeNative(Native Method)
04-30 20:58:39.708 W/System.err( 1451):  at java.lang.reflect.Method.invoke(Method.java:511)....
后来就上google搜,发现还真有位仁兄遇到了这个问题,并提供了解决方案,在此灰常感谢,为了记录下来,也给大家做个分享,原文: http://liuzhichao.com/p/1463.html
在此引用这位仁兄的文章了,就不重复造轮子了。

百度定位SDK错误:Couldn’t load locSDK3: findLibrary returned null


在使用百度定位SDK的时候,明明已经加入了liblocSDK3.so,Manifest中也添加了相应权限,注册了com.baidu.location.f服务。但总是无法定位。提示错误java.lang.UnsatisfiedLinkError: Couldn’t load locSDK3: findLibrary returned null.

2cf5e0fe9925bc312b9b17435edf8db1ca137022

根据错误提示是无法找到locSDK3这个库,但是又明明在armeabi中加入了liblocSDK3.so。被这个问题困扰了很久。在做NDK开发的时候,NDK编译的so有时会在armeabi和armeabi-v7a中分别放置一份。突然想到上面的错误是不是也是因为这个原因。

然后在项目的libs目录下新建一个文件夹,命名为armeabi-v7a,然后将liblocSDK3.so复制一份到该文件夹。

libBMapApiEngine

到此,问题就这样被ko了!

  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值