当前位置: 代码迷 >> Android >> android百度map转为高德map
  详细解决方案

android百度map转为高德map

热度:50   发布时间:2016-04-28 04:20:21.0
android百度地图转为高德地图
使用百度地图也不少时间了,但是一直出现无法解决的问题,在官方论坛上也找到答案了,sdk的bug,却一直没有解决(说是解决了,还是会出现.)无奈只有转为高德地图了.这不是什么事.就是没事 随便说说.主要是由于PopupOverlay这个导致的,使用Fragment,但没有继承地图的map.自己控制生命周期.@Override    public void onResume() {        try {            GJBMapUtil.getInstance().start();            mMapView.onResume();            super.onResume();        } catch (Exception e) {        }}其它略.按这样的处理方式,不会有问题的啊.但很失望,弹出的层,点击后一直报一个错误.08-04 08:34:03.413: E/AndroidRuntime(2269): FATAL EXCEPTION: main08-04 08:34:03.413: E/AndroidRuntime(2269): java.lang.NullPointerException08-04 08:34:03.413: E/AndroidRuntime(2269): at com.baidu.mapapi.map.d.a(Unknown Source)08-04 08:34:03.413: E/AndroidRuntime(2269): at com.baidu.platform.comapi.map.base.e.g(Unknown Source)08-04 08:34:03.413: E/AndroidRuntime(2269): at com.baidu.platform.comapi.map.base.e.d(Unknown Source)08-04 08:34:03.413: E/AndroidRuntime(2269): at com.baidu.platform.comapi.map.base.a.onSingleTapConfirmed(Unknown Source)08-04 08:34:03.413: E/AndroidRuntime(2269): at android.view.GestureDetector$GestureHandler.handleMessage(GestureDetector.java:273)08-04 08:34:03.413: E/AndroidRuntime(2269): at android.os.Handler.dispatchMessage(Handler.java:99)08-04 08:34:03.413: E/AndroidRuntime(2269): at android.os.Looper.loop(Looper.java:137)也搜索了下,确实是有不少人有这个问题,2.x版最后一个版本还是有此问题.换3.0,发现弹出的层,不能对里面的view单独处理,比如一个按钮放到linealayout中,点击层,只能触发onInfoWindow,是对整个linearlayout的,而不能处理对按钮的.事件 .高德的却可以.希望有遇到类似问题的同学可以参考下,并没有对百度地图有什么鄙视,也不是抬高了高德,两个都是免费的,相当好.只不过个人开发遇到这种问题,太频繁了,使用地图50%的概率崩溃.另外,高德地图的key,先申请了个人的,然后不能定位,后来另一同事申请了一个,位数居然不同.不正常的key位数较多.不知道高德在这方面有什么说法,官方在回答定位失败的问题时,也是让确认下key是否正常,但为何会有不正常的key呢?申请key也要讲人品了?高德地图是全部使用java渲染的,所以效果不如百度地图,流畅度不好.但切换后,使用到现在,没发现崩溃,以后就它了.
  相关解决方案