使用AsyncTask检测到Nullpointerexception

时间:2015-01-08 20:53:27

标签: java android android-asynctask nullpointerexception

我正在开发一个下载XML文件的应用程序,解析它然后在屏幕上显示信息。我在以下代码中收到NullPointerException异常错误:

这是代码:

private class DownloadXmlTask extends AsyncTask<String, Void, List<vehicleInfo>> {
    @Override
    protected List<vehicleInfo> doInBackground(String... url) {
        try {
            return getvehicles.processBusTime();
        } catch (IOException e) {
           return null;
        } catch (XmlPullParserException e) {
            return null;
        }
    }

    @Override
    protected void onPostExecute(List<vehicleInfo> result) {


            for (int record = 0; record < result.size(); record++) {

            double latitude = result.get(record).latitude;
            double longitude = result.get(record).longitude;

                mMap.addMarker(new MarkerOptions().position(new LatLng(latitude,     longitude)).title("Marker"));

        }

    }
}

它会在NullPointerException

行返回for (int record = 0; record < result.size(); record++) {

可能是什么问题?

感谢。

2 个答案:

答案 0 :(得分:0)

resultnull。您确定getvehicles.processBusTime()正在返回列表吗?

答案 1 :(得分:-1)

我敢打赌结果为空的钱。

如果null是可接受的值,请尝试类似:

 for (int record = 0; result != null && record < result.size(); record++)