No implementation found for int com.baidu.platform.comjni.map.commonmemcache.JNICommonMemCache.Creat
2016-11-11 16:34
501 查看
AndroidStudio使用百度地图出现初始化错误:SDK”No implementation found for int com.baidu.platform.comjni.map.commonmemcache.JNICommonMemCache.Create() “
这个问题一般是在使用AndroidStudio时才遇到的.今天在工作中遇到了一个奇怪的问题,项目中需要使用百度地图SDK和定位SDK,我先集成了百度地图SDK,开发文档中说明了不同平台的SO文件可以放在project/module/src/main/jniLibs文件平下,也可以放在项目根目录下的/libs文件夹下(也就是projects/libs).
而AndroidStudio默认是会在project/module/src/main/jniLibs目录下加载so库的,所以需要注意的是后者(放在project/libs目录下)需要在gradle文件中声明so库的寻找位置,配置如下:声明要在Libs目录下加载so库.
android { sourceSets { main { jniLibs.srcDirs = ['libs'] } } }
接着集成了定位SDK,需要注意,这里就开始出现问题了!!!
开发文档中并没有说明如果需要使用多个SDK,需要把不同平台的so库放在一个文件夹下!,也就是说如果你把百度地图SDK放在了libs文件夹下,把定位SDK放在了jniLibs文件夹下,这样会出现问题的.也就会出现错误如下
java.lang.NoSuchMethodError: No direct method (Lcom/baidu/lbsapi/auth/LBSAuthManager;
或者出现如题所描述的错误!
所以我们需要做的是把要集成的多个 SDK的so库放在一个文件夹下,如果不是要project/module/src/main/jniLibs下就需要在gradle中声明,上面已经说了.这样就会全部加载了.
附参考链接(需要翻强):https://www.shaneenishry.com/blog/2014/08/17/ndk-with-android-studio/
相关文章推荐
- java.lang.UnsatisfiedLinkError: No implementation found for int com.baidu.platform.comjni.map.commonmemcache.JNICommonMemCache.Create()
- No implementation found for long com.baidu.platform.comjni.map.commonmemcache.JNICommonMemCache.Create()
- java.lang.UnsatisfiedLinkError: No implementation found for int com.baidu.platform.comjni.map.common
- 百度地图中,提示java.lang.UnsatisfiedLinkErr:No implementation found for int com.baidu.platform.comjni.map.c
- No implementation found for int com.baidu.platform.comjni.map
- studio调用百度MAP的JNI发生的问题: No implementation found for long com.baidu.platform.comjni.map.commonmemcach
- 调用地图提示错误:java.lang.UnsatisfiedLinkError: No implementation found for int com.baidu.platform.comjni.t
- java.lang.UnsatisfiedLinkError: No implementation found for long com.baidu.platform.comjni.map.commo
- No implementation found for int com.baidu.platform.comjni.engine.JNIEngine.initClass
- java.lang.UnsatisfiedLinkError: No implementation found for long com.baidu.platform.comjni.map.commo
- 百度地图定位集成及问题汇总No implementation found for int com.baidu.platform.comjni.tools.JNITools.initClass
- 百度地图关于No implementation found for long com.baidu.platform.comjni.ma...出现的问题
- Exception for Android 1 - com.baidu.platform.comjni.map.commonmemcache.JNICommonMemCache.Create
- 解决 Native method not found: com.baidu.platform.comjni.map.commonmemcache.JNICommonMemCache.Create:()
- 使用百度地图时出现com.baidu.platform.comjni.map.commonmemcache.JNICommonMemCache
- E/art: No implementation found for int com.baidu.speechsynthesizer
- Native method not found: com.baidu.platform.comjni.map.commonmemcache.JNICommonMemCache.Create:()I
- java.lang.UnsatisfiedLinkError: Native method not found: com.baidu.platform.comjni.map.commonmemcach
- 解决No implementation found for int com.baidu.mapapi.Mj.initCla
- 百度地图sdk接入报错:com.baidu.platform.comjni.map.commonmemcache.JNICommonMemCache.Create:()J