写的代码如下:报错指在了蓝颜色的位置,但是我打印的fromAndTo1,point2,point3 都是有值的,这个为什么呢,难道是Route类是空指针??
 if (point0 != null && point2 != null) {
    Route.FromAndTo fromAndTo1 = new Route.FromAndTo(point2, point3);
    List<Route> routeResult1 = null;
    Log.i("test", "----fromAndTo1---"+fromAndTo1);
    Log.i("test", "----point2---"+point2);
    Log.i("test", "----point3---"+point3);
 if(null!=fromAndTo1){
    try {
     routeResult1 = Route.calculateRoute(
       NavigateSimulateActivity.this,
       getString(R.string.maps_api_key), fromAndTo1,
       Route.DrivingNoFastRoad);
    } catch (MapAbcException e) {
     e.printStackTrace();
    }
 }
 
}
 
10-23 13:05:52.765: WARN/System.err(2586): org.xml.sax.SAXParseException: Unexpected end of document
 10-23 13:05:52.765: WARN/System.err(2586):     at org.apache.harmony.xml.parsers.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:129)
 10-23 13:05:52.765: WARN/System.err(2586):     at javax.xml.parsers.DocumentBuilder.parse(DocumentBuilder.java:107)
 10-23 13:05:52.765: WARN/System.err(2586):     at com.mapabc.mapapi.core.c.a(CoreUtil.java:98)
 10-23 13:05:52.765: WARN/System.err(2586):     at com.mapabc.mapapi.core.c.c(CoreUtil.java:106)
 10-23 13:05:52.765: WARN/System.err(2586):     at com.mapabc.mapapi.core.t.d(XmlResultHandler.java:54)
 10-23 13:05:52.765: WARN/System.err(2586):     at com.mapabc.mapapi.route.d.c(DriveWalkHandler.java:96)
 10-23 13:05:52.765: WARN/System.err(2586):     at com.mapabc.mapapi.core.r.a(XmlListResultHandler.java:1)
 10-23 13:05:52.765: WARN/System.err(2586):     at com.mapabc.mapapi.core.k.c(ProtocalHandler.java:187)
 10-23 13:05:52.765: WARN/System.err(2586):     at com.mapabc.mapapi.core.k.i(ProtocalHandler.java:128)
 10-23 13:05:52.765: WARN/System.err(2586):     at com.mapabc.mapapi.core.k.e(ProtocalHandler.java:103)
 10-23 13:05:52.765: WARN/System.err(2586):     at com.mapabc.mapapi.route.Route.calculateRoute(Route.java:145)
 10-23 13:05:52.765: WARN/System.err(2586):     at com.nec.navigate.NavigateSimulateActivity.getBatterysimulatePoints(NavigateSimulateActivity.java:2034)
 10-23 13:05:52.765: WARN/System.err(2586):     at com.nec.navigate.NavigateSimulateActivity.access$4(NavigateSimulateActivity.java:1990)
 10-23 13:05:52.765: WARN/System.err(2586):     at com.nec.navigate.NavigateSimulateActivity$3.run(NavigateSimulateActivity.java:362)
 10-23 13:05:52.765: WARN/System.err(2586):     at java.lang.Thread.run(Thread.java:1019)
 10-23 13:05:52.765: WARN/dalvikvm(2586): threadid=17: thread exiting with uncaught exception (group=0x40015560)
 10-23 13:05:52.769: ERROR/AndroidRuntime(2586): FATAL EXCEPTION: Thread-25
 10-23 13:05:52.769: ERROR/AndroidRuntime(2586): java.lang.NullPointerException
 10-23 13:05:52.769: ERROR/AndroidRuntime(2586):     at com.mapabc.mapapi.core.t.d(XmlResultHandler.java:55)
 10-23 13:05:52.769: ERROR/AndroidRuntime(2586):     at com.mapabc.mapapi.route.d.c(DriveWalkHandler.java:96)
 10-23 13:05:52.769: ERROR/AndroidRuntime(2586):     at com.mapabc.mapapi.core.r.a(XmlListResultHandler.java:1)
 10-23 13:05:52.769: ERROR/AndroidRuntime(2586):     at com.mapabc.mapapi.core.k.c(ProtocalHandler.java:187)
 10-23 13:05:52.769: ERROR/AndroidRuntime(2586):     at com.mapabc.mapapi.core.k.i(ProtocalHandler.java:128)
 10-23 13:05:52.769: ERROR/AndroidRuntime(2586):     at com.mapabc.mapapi.core.k.e(ProtocalHandler.java:103)
 10-23 13:05:52.769: ERROR/AndroidRuntime(2586):     at com.mapabc.mapapi.route.Route.calculateRoute(Route.java:145)
 10-23 13:05:52.769: ERROR/AndroidRuntime(2586):     at com.nec.navigate.NavigateSimulateActivity.getBatterysimulatePoints(NavigateSimulateActivity.java:2034)
 10-23 13:05:52.769: ERROR/AndroidRuntime(2586):     at com.nec.navigate.NavigateSimulateActivity.access$4(NavigateSimulateActivity.java:1990)
 10-23 13:05:52.769: ERROR/AndroidRuntime(2586):     at com.nec.navigate.NavigateSimulateActivity$3.run(NavigateSimulateActivity.java:362)
 10-23 13:05:52.769: ERROR/AndroidRuntime(2586):     at java.lang.Thread.run(Thread.java:1019)
 10-23 13:05:52.785: WARN/ActivityManager(149):   Force finishing activity com.nec.navigate/.NavigateSimulateActivity
 10-23 13:05:53.261: WARN/ActivityManager(149): Duplicate finish request for HistoryRecord{408528d0 com.nec.navigate/.NavigateSimulateActivity}
 
打印出来
 10-23 13:05:51.710: INFO/test(2586): ----fromAndTo1---com.mapabc.mapapi.route.Route$FromAndTo@406e7698
 10-23 13:05:51.714: INFO/test(2586): ----point2---39994625,116327049
 10-23 13:05:51.714: INFO/test(2586): ----point3---40018150,116339722
 哪位朋友会呢?

解决方案 »

  1.   

    难道是 getString(R.string.maps_api_key), 报错了 ?报空了?
      

  2.   

    指向的是
     routeResult1 = Route.calculateRoute(
     这一行出现报空指针是有时有,有时就没事儿了,这个是为什么呢?
      

  3.   

    你可以试着加
    if( Route==null) {
      Route = new .....
    }
      

  4.   

    你好,Route是一个类,
    执行不了if(Route==null) 的
      

  5.   

    你好,Route是一个类,
     执行不了if(Route==null) 的 
      

  6.   

    那里传入的5个参数最好都检查一下,其实空指针错误是最容易解决的,如果确实很容易出意外的就用try+catch包一下