我正在调用一个在主线程上执行网络操作的类,导致我的应用程序在更新的设备上崩溃。因此,我尝试将对该类的调用移动到我的主要活动中的 AsyncTask 内部类中。但是现在我得到空参考期望。
这是我的异步任务:
private class RetreiveAmazonNodesXML extends AsyncTask {
private Exception exception;
@Override
protected Object doInBackground(Object... params) {
try {
childrenBrowseNodesXml = new Amazon(browseNodeId, locality);
} catch (Exception e) {
this.exception = e;
}
return null;
}
}
这就是我在我的活动中所说的:
RetreiveAmazonNodesXML test = new RetreiveAmazonNodesXML();
test.execute();
parseXmlFile(childrenBrowseNodesXml.getBrowseNodesXML());
childrenBrowseNodesXml 未更新并返回 null。我知道我的 Amazon 类工作正常,所以我用 AsyncTask 做了一些事情,但我不知道?