Android笔记---使用百度地图报错:Couldn't load BaiduMapSDK_v2_3_1 from loader dalvik.system.PathClassLoader

一、错误:

学习使用百度地图,按着教程编写了一个测试程序。但是运行时,却报错:E/AndroidRuntime(1960): java.lang.UnsatisfiedLinkError: Couldn't load BaiduMapSDK_v2_3_1 from loader dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/com.johnnie.baidumaptest-2.apk"],nativeLibraryDirectories=[/data/app-lib/com.johnnie.baidumaptest-2, /system/lib]]]: findLibrary returned null。看到这个错误时,就纳闷了,明明和书上的一模一样,为啥会出错?项目结构图如下:

Android笔记---使用百度地图报错:Couldn't load BaiduMapSDK_v2_3_1 from loader dalvik.system.PathClassLoader_第1张图片

二、解决:

查下资料,发现大都说要在libs下新建一个armeabi-v7a的目录,然后将libBaiduMapSDK_v2_3_1.so拷贝一份进去。运行还是一样的错误,没半点用。查看下官方Demo,官方下的libs目录下的结构和教材的一样,都是没有 armeabi-v7a 的,但是都运行成功了。这就更纳闷了,到底是什么问题呢?仔细查看了下报错信息,觉得会不会是因为模拟器的文件目录结构不符合百度地图的设定,需要使用真机来测试?抱着试试的态度,然后使用真机运行,结果成功了.......问题就这么解决了。


三、结论:

测试时,尽量使用真机来运行程序,而不是使用模拟器

你可能感兴趣的:(android,报错,百度地图)