百度地图android开发出现 com.baidu.mapapi.BMapManager.init(Unknown Source)

异常信息:


04-28 14:54:39.781: D/dalvikvm(30873): Trying to load lib /data/data/com.fyfeng.baidumaptest/lib/libvi_voslib.so 0x42028510
04-28 14:54:39.789: D/dalvikvm(30873): Added shared lib /data/data/com.fyfeng.baidumaptest/lib/libvi_voslib.so 0x42028510
04-28 14:54:39.789: D/dalvikvm(30873): No JNI_OnLoad found in /data/data/com.fyfeng.baidumaptest/lib/libvi_voslib.so 0x42028510, skipping init
04-28 14:54:39.789: D/dalvikvm(30873): Trying to load lib /data/data/com.fyfeng.baidumaptest/lib/libapp_BaiduMapApplib_v2_1_1.so 0x42028510
04-28 14:54:39.789: D/dalvikvm(30873): Added shared lib /data/data/com.fyfeng.baidumaptest/lib/libapp_BaiduMapApplib_v2_1_1.so 0x42028510
04-28 14:54:39.961: W/System.err(30873): java.lang.StringIndexOutOfBoundsException: length=15; regionStart=0; regionLength=-1
04-28 14:54:39.961: W/System.err(30873): 	at java.lang.String.startEndAndLength(String.java:593)
04-28 14:54:39.961: W/System.err(30873): 	at java.lang.String.substring(String.java:1474)
04-28 14:54:39.969: W/System.err(30873): 	at com.baidu.platform.comapi.d.c.j(Unknown Source)
04-28 14:54:39.969: W/System.err(30873): 	at com.baidu.platform.comapi.d.c.g(Unknown Source)
04-28 14:54:39.969: W/System.err(30873): 	at com.baidu.platform.comapi.d.c.c(Unknown Source)
04-28 14:54:39.969: W/System.err(30873): 	at com.baidu.platform.comapi.a.a(Unknown Source)
04-28 14:54:39.969: W/System.err(30873): 	at com.baidu.mapapi.BMapManager.init(Unknown Source)
04-28 14:54:39.969: W/System.err(30873): 	at com.fyfeng.baidumaptest.MainActivity.onCreate(MainActivity.java:26)
04-28 14:54:39.969: W/System.err(30873): 	at android.app.Activity.performCreate(Activity.java:5185)
04-28 14:54:39.969: W/System.err(30873): 	at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1094)
04-28 14:54:39.969: W/System.err(30873): 	at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2071)
04-28 14:54:39.969: W/System.err(30873): 	at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2132)
04-28 14:54:39.969: W/System.err(30873): 	at android.app.ActivityThread.access$700(ActivityThread.java:140)
04-28 14:54:39.969: W/System.err(30873): 	at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1238)
04-28 14:54:39.969: W/System.err(30873): 	at android.os.Handler.dispatchMessage(Handler.java:99)
04-28 14:54:39.969: W/System.err(30873): 	at android.os.Looper.loop(Looper.java:137)
04-28 14:54:39.969: W/System.err(30873): 	at android.app.ActivityThread.main(ActivityThread.java:4918)
04-28 14:54:39.969: W/System.err(30873): 	at java.lang.reflect.Method.invokeNative(Native Method)
04-28 14:54:39.969: W/System.err(30873): 	at java.lang.reflect.Method.invoke(Method.java:511)
04-28 14:54:39.969: W/System.err(30873): 	at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:994)
04-28 14:54:39.969: W/System.err(30873): 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:761)
04-28 14:54:39.969: W/System.err(30873): 	at dalvik.system.NativeStart.main(Native Method)
04-28 14:54:40.000: D/dalvikvm(30873): Trying to load lib /data/data/com.fyfeng.baidumaptest/lib/libvi_voslib.so 0x42028510
04-28 14:54:40.000: D/dalvikvm(30873): Shared lib '/data/data/com.fyfeng.baidumaptest/lib/libvi_voslib.so' already loaded in same CL 0x42028510
04-28 14:54:40.000: W/System.err(30873): java.lang.StringIndexOutOfBoundsException: length=15; regionStart=0; regionLength=-1
04-28 14:54:40.008: W/System.err(30873): 	at java.lang.String.startEndAndLength(String.java:593)
04-28 14:54:40.008: W/System.err(30873): 	at java.lang.String.substring(String.java:1474)
04-28 14:54:40.008: W/System.err(30873): 	at com.baidu.platform.comapi.d.c.j(Unknown Source)
04-28 14:54:40.008: W/System.err(30873): 	at com.baidu.platform.comapi.d.c.c(Unknown Source)
04-28 14:54:40.008: W/System.err(30873): 	at com.baidu.platform.comapi.a.a(Unknown Source)
04-28 14:54:40.008: W/System.err(30873): 	at com.baidu.mapapi.BMapManager.init(Unknown Source)
04-28 14:54:40.008: W/System.err(30873): 	at com.fyfeng.baidumaptest.MainActivity.onCreate(MainActivity.java:26)
04-28 14:54:40.008: W/System.err(30873): 	at android.app.Activity.performCreate(Activity.java:5185)
04-28 14:54:40.008: W/System.err(30873): 	at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1094)
04-28 14:54:40.008: W/System.err(30873): 	at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2071)
04-28 14:54:40.008: W/System.err(30873): 	at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2132)
04-28 14:54:40.008: W/System.err(30873): 	at android.app.ActivityThread.access$700(ActivityThread.java:140)
04-28 14:54:40.008: W/System.err(30873): 	at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1238)
04-28 14:54:40.008: W/System.err(30873): 	at android.os.Handler.dispatchMessage(Handler.java:99)
04-28 14:54:40.008: W/System.err(30873): 	at android.os.Looper.loop(Looper.java:137)
04-28 14:54:40.008: W/System.err(30873): 	at android.app.ActivityThread.main(ActivityThread.java:4918)
04-28 14:54:40.008: W/System.err(30873): 	at java.lang.reflect.Method.invokeNative(Native Method)
04-28 14:54:40.008: W/System.err(30873): 	at java.lang.reflect.Method.invoke(Method.java:511)
04-28 14:54:40.008: W/System.err(30873): 	at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:994)
04-28 14:54:40.008: W/System.err(30873): 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:761)
04-28 14:54:40.008: W/System.err(30873): 	at dalvik.system.NativeStart.main(Native Method)
04-28 14:54:40.055: W/System.err(30873): java.lang.StringIndexOutOfBoundsException: length=15; regionStart=0; regionLength=-1
04-28 14:54:40.055: W/System.err(30873): 	at java.lang.String.startEndAndLength(String.java:593)
04-28 14:54:40.055: W/System.err(30873): 	at java.lang.String.substring(String.java:1474)
04-28 14:54:40.055: W/System.err(30873): 	at com.baidu.platform.comapi.d.c.j(Unknown Source)
04-28 14:54:40.055: W/System.err(30873): 	at com.baidu.platform.comapi.d.c.e(Unknown Source)
04-28 14:54:40.055: W/System.err(30873): 	at com.baidu.platform.comapi.a.a(Unknown Source)
04-28 14:54:40.055: W/System.err(30873): 	at com.baidu.mapapi.BMapManager.init(Unknown Source)
04-28 14:54:40.055: W/System.err(30873): 	at com.fyfeng.baidumaptest.MainActivity.onCreate(MainActivity.java:26)
04-28 14:54:40.062: W/System.err(30873): 	at android.app.Activity.performCreate(Activity.java:5185)
04-28 14:54:40.062: W/System.err(30873): 	at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1094)
04-28 14:54:40.062: W/System.err(30873): 	at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2071)
04-28 14:54:40.062: W/System.err(30873): 	at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2132)
04-28 14:54:40.062: W/System.err(30873): 	at android.app.ActivityThread.access$700(ActivityThread.java:140)
04-28 14:54:40.062: W/System.err(30873): 	at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1238)
04-28 14:54:40.062: W/System.err(30873): 	at android.os.Handler.dispatchMessage(Handler.java:99)
04-28 14:54:40.062: W/System.err(30873): 	at android.os.Looper.loop(Looper.java:137)
04-28 14:54:40.062: W/System.err(30873): 	at android.app.ActivityThread.main(ActivityThread.java:4918)
04-28 14:54:40.062: W/System.err(30873): 	at java.lang.reflect.Method.invokeNative(Native Method)
04-28 14:54:40.062: W/System.err(30873): 	at java.lang.reflect.Method.invoke(Method.java:511)
04-28 14:54:40.062: W/System.err(30873): 	at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:994)
04-28 14:54:40.062: W/System.err(30873): 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:761)
04-28 14:54:40.062: W/System.err(30873): 	at dalvik.system.NativeStart.main(Native Method)
04-28 14:54:40.109: D/Test(30873): /storage/sdcard0/BaiduMapSDK
04-28 14:54:40.820: D/dalvikvm(30873): GC_CONCURRENT freed 206K, 7% free 9626K/10311K, paused 13ms+2ms, total 32ms
04-28 14:54:40.820: D/dalvikvm(30873): WAIT_FOR_CONCURRENT_GC blocked 14ms
04-28 14:54:40.883: D/libEGL(30873): loaded /vendor/lib/egl/libEGL_POWERVR_SGX540_120.so
04-28 14:54:40.891: D/libEGL(30873): loaded /vendor/lib/egl/libGLESv1_CM_POWERVR_SGX540_120.so
04-28 14:54:40.898: D/libEGL(30873): loaded /vendor/lib/egl/libGLESv2_POWERVR_SGX540_120.so

运行时,在手机上面已经安装了几自己编写的百度地图的测试示例,估计是因为文件功能用造成的。


反编译baidumapapi_v2_1_1.jar包发现在 com.baidu.platform.comapi.d.c.j(Unknown Source)这个方法如下:


private static String j(Context paramContext)
  {
    String str1 = null;
    String str2 = "imei.dat";
    String str3 = paramContext.getFilesDir().getAbsolutePath() + "/" + str2;
    File localFile = new File(str3);
    try
    {
      Object localObject;
      if (!localFile.exists())
      {
        B = false;
        str1 = k(paramContext);
        localObject = paramContext.openFileOutput(str2, 32768);
        ((FileOutputStream)localObject).write(str1.getBytes());
        ((FileOutputStream)localObject).close();
      }
      else
      {
        B = true;
        localObject = paramContext.openFileInput(str2);
        byte[] arrayOfByte = new byte[((FileInputStream)localObject).available()];
        ((FileInputStream)localObject).read(arrayOfByte);
        ((FileInputStream)localObject).close();
        str1 = new String(arrayOfByte);
        int i1 = str1.indexOf('|');
        str1 = str1.substring(0, i1);
      }
    }
    catch (Exception localException)
    {
      localException.printStackTrace();
    }
    return (String)str1;
  }

说明:

imei.dat这个文件已经存在,推测这个文件已经被创建,所以推测原因是受其他程序的影响。


解决办法:

删除手机上面的其他有关地图测试示例安装程序后,上面的异常情况就消失了。


你可能感兴趣的:(android,Android开发)