2011-12-30 23 views
1

我的代碼從服務器拉JSON。 JSON包含圖片網址。我解析JSON並將JSON中URL的圖像下載到Bitmap Hashtable中,以停止對同一圖像進行多次下載。當我在UI線程上運行這個時,應用程序變慢,但工作。在將它移動到AsyncTask時,應用程序崩潰時出現致命異常:java.lang.RuntimeException:執行doInBackground()時發生錯誤Android的AsyncTask崩潰在多個互聯網下載

可能會出現什麼問題?

這裏是異步代碼http://pastebin.com/isDgENkJ

+2

向我們展示您的'AsyncTask'代碼。 – 2011-12-30 16:15:41

+1

也發佈logcat錯誤以獲得清晰的想法。 – 2011-12-30 16:30:02

回答

1

更改class聲明:

public class GetMapsAsync extends AsyncTask<Void,Void, CustomItemizedOverlay>{ 

和你的doInBackgournd()方法應該是這樣的:

protected CustomItemizedOverlay doInBackground(Void... v){ 

刪除裏面doInBackgournd()這行:

mapOverlays.add(itemizedOverlay); 

,並把這一行,而不是return null;在裏面到底doInBackgournd()

return itemizedOverlay; 

和你的onPostExecute()方法應該是這樣的:

@Override 
protected void onPostExecute(CustomItemizedOverlay overlay) { 
    mapOverlays.add(overlay); 
} 

如果你仍然看到任何Exception然後發佈您的logcat也。

相關問題