高德地图6.0系统上崩溃的问题

     使用高德地图sdk显示地图发现在android6.0系统上崩溃,初始化map时报java.lang.NoClassDefFoundError: org.apache.harmony.security.pkcs7.SignedData 异常,而demo运行却没问题,找了很久发现跟腾讯IMsdk冲突,腾讯IM在Application里初始化的,初始化后高德地图就用不了。

    解决办法把地图初始化放在腾讯IM前面 :

              public static MapView mapView;
      public static AMap aMap;


                mapView  =  new MapView(instance); 
aMap = mapView.getMap();

// IM腾讯初始化 下面两行代码调用后 在android6.0上使用高德地图闪退,所以获得地图代码放在上面。
TIMManager.getInstance().init(instance, Constants.SDK_APPID, "" + Constants.ACCOUNT_TYPE);
Foreground.init(instance);

  

   //在需要的类中动态的使用地图view

 LinearLayout map_ly = (LinearLayout) findViewById(R.id.map_ly);
LayoutParams params = new               LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT,LinearLayout.LayoutParams.MATCH_PARENT); 
mapView.setLayoutParams(params);
ViewGroup parent = (ViewGroup) mapView.getParent();
if (parent != null) {
   parent.removeAllViews();
   map_ly.addView(mapView);
}else  {
   map_ly.addView(mapView);
}

   


    

你可能感兴趣的:(高德地图6.0系统上崩溃的问题)