Android 百度地图开发总结

最近一段时间 ,公司项目又用到百度地图,以前也用过几次 都是基本的功能,这一次地图基本需要的功能都基本完成,就决定记录一次,再就是要放假了有时间。

项目用到的百度地图功能介绍:

 1.基础定位(实时定位),2.地图检索功能,3.个性化地图,4.步行导航,骑车导航,开车导航,5.添加Mark点,6多点定位,7.位置提醒,8.地理编码和地理反编码,9.百度语音播报,基本就这些功能。

少废话,来几张截图展示一下:

Android 百度地图开发总结_第1张图片

Android 百度地图开发总结_第2张图片Android 百度地图开发总结_第3张图片

 

开发步骤

1.去百度地图开放平台注册,创建应用生成对应的Key。(网上很多步骤,得到SHA1,正式版和开发版)

2.下载你需要的SDK和Demo 集成到自己的项目中(这里注意libs和jniLibs里面的东西,个人建议跑通demo,在把这2个里面的东西复制到自己项目下面)

3.看相应的文档基本就查不多能达到自己的要求

开发中遇到的问题:

1.定位有时候跑到南非那个小国家去了。

  解决办法是:重新用工具生成SHA1,在去获取Key (注意包名不要错误)。就解决了定位跑到南非的问题

2.定位(实时定位,当前的位置只要重新定位,就把地图拉到了当前位置在手机屏幕中央)

解决办法是:

/**
 * 地图移动到我的位置,此处可以重新发定位请求,然后定位;
 * 直接拿最近一次经纬度,如果长时间没有定位成功,可能会显示效果不好
 */
private void center2myLoc(double currentLantitude, double currentLongitude) {
    LatLng ll = new LatLng(currentLantitude, currentLongitude);
    MapStatusUpdate u = MapStatusUpdateFactory.newLatLng(ll);
    mMapView.getMap().animateMapStatus(u);
}

把这个放到是否第一次定位里面去 ,以前是放到外面的。

3.开车导航问题

Android 百度地图开发总结_第4张图片说在libs下面找不到,看它的demo是在jniLibs下面 而没有放到libs下面。

解决办法:把这几个鸟东西复制到自己项目的libs下面 ,就完美的解决了

4.开车导航(算路失败)

解决办法:把开始位置和结束位置的经纬度不要搞错 ,封装为LatLng 就ok

5.sdk和jar包的冲突(debug版本能编译通过,但是release版本就编译不过)

解决办法:下载最新的sdk和jar包,或者找到有冲突的jar 删掉相同的 。就能解决

再优化一下,改一下Demo 就基本能到达需求。

 

 

 

 

 

 

 

 

 

你可能感兴趣的:(Android 百度地图开发总结)