您的位置:首页 > 其它

解决照百度地图api开发指南配置但无法进入主界面问题

2015-07-18 10:25 351 查看
现在是2015年7月18日。一次性完全按照百度地图API官方网站的开发指南去做,运行程序时会出错,进不了主界面。(解决方法在后面的黑体字中,可直接跳过分析过程)

Eclipse报错:java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.map/com.example.map.MainActivity}:

The following classes could not be instantiated:- com.baidu.mapapi.map.MapView (Open Class, Show Error Log)

Android Studio则没有详细的说哪里错。

我使用的是Android Studio。先定位错误,按开发指南一步步来。每添加一段代码,进行一次调试。最终定位到SDKInitializer.initialize(getApplicationContext());​这一句有问题。​查看SDKInitializer的内容:



SDKInitializer

看不懂关于Context的代码,这时想到百度地图的示例代码。

将下载的示例代码导入Android Studio,看到目录结构如下:



BaiduMapsApiDemo目录结构

​发现问题出现在哪了。原来jniLibs不是直接放*.so文件,而是要把百度给的几个文件夹都复制进来。也就是说:

1. 如果是用Eclipse,则把从百度地图API官网下载下来的文件解压后,将so目录里的所有文件夹全都放到libs\里面(亲测有效)

2. 如果是用Android Studio,则把so目录里的所有文件夹全都​​放到src/main/jniLibs目录中(亲测有效)

jniLibs里的文件夹分别对应不同的CPU类型。如果没有全部导入,又碰到不支持的CPU,运行的时候就会出现错误。so文件需要放在以CPU类型为文件夹名的文件夹中。直接将so文件放入jniLibs还是会出现错误。​

看看百度的开发指南是怎么写的:​



Eclipse配置



 Android
Studio设置

第一张,只导入了一个文件夹。

第二张……压根就没给图。

所以说,百度地图的教程不适合初学者么?​​
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  百度地图 api