您的位置:首页 > 移动开发 > Android开发

Android百度地图HelloWorld运行异常处理

2014-08-25 16:47 295 查看
Android新手百度地图HelloWorld运行异常,所有的步骤都是按照百度官方操作来的但是启动的时候报错,而且这些错误很离谱.后来拿来官方的示例程序也是有相关的错误的,最后发现主要的问题在于***D版本没有和SDK的版本对应起来,另外地图的ak签名需要用系统cmd方式获取而不是Eclipse来获取(这两种方式获取到的SHA1签名不一致)。


1.***D版本不对应Android sdk的版本导致程序启动不起来

源码见此处:http://developer.baidu.com/map/wiki/index.php?title=androidsdk/guide/hellobaidumap,错误如下:



找了很久其实不是API的问题,也不是程序的问题而是***D 模拟器的问题,我用的是Android的4.4.w所以虚拟机也要创建相同的版本,不然就有如上意想不到的事情发生。


2.签名验证失败调用地图API地图无法显示

总是出现如下图所示的界面:



这是由于SHA1签名不匹配造成的。将百度APP创建的项目及ak删掉重新创建,得到新的ak。ak生成方式见:http://developer.baidu.com/map/sdkandev-14.htm,用cmd方式获取到SHA1的ak才行。


3.测试重新注册后的ak

在AndroidManifest.xml中加入如下代码的:
<application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >

        <!-- 配置百度地图key -->
        <meta-data
            android:name="com.baidu.lbsapi.API_KEY"
            android:value="GaCKiZmOn99Vb7uDEWfrlV3b" />
            ......................


启动***D测试,如下测试成功:




注:oschina(开源中国)上有人说百度官网上的API更新不及时,所以导致程序运行不起来,这个可能未必是这样,不要把所有的问题归结为百度地图本身的问题,否则就会阻止自己成长和提高了;多从自己的角度出发,利用工具去发现问题寻找问题的突破口才是最佳实践之道。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐