[問題] 請問從API抓回來的資料能再抓一次資料嗎

作者: akito117 (宗益)   2020-05-29 17:54:48
@Override
protected void onPostExecute(String message) {
super.onPostExecute(message);
items = new ArrayList<>();
JSONArray rows;
try {
json_read = new JSONObject(message);
gps = json_read.getJSONArray("rows");
for (int i = 0; i < gps.length(); i++) {
JSONObject row = gps.getJSONObject(i);
Map<String, Object> item = new HashMap<>();
String Url = "http://xxxx/getAddress.ashx?h=" +
row.getString("lat") + "," + row.getString("lng");
try {
HttpClient httpClient = new DefaultHttpClient();
HttpGet get = new HttpGet(Url);
HttpResponse response = httpClient.execute(get);
HttpEntity resEntity = response.getEntity();
//Address = EntityUtils.toString(resEntity);
item.put("address", EntityUtils.toString(resEntity));
} catch (Exception e) {
item.put("address", e.toString());
}
items.add(item);
}
} catch (JSONException e) {
e.printStackTrace();
}
會報android.os.NetworkOnMainThreadException
請問大概要怎麼解
謝謝
作者: XperiaZ6C (真●安卓輕旗艦)   2020-05-29 18:02:00
你要開一個thread處理吧,不然你app就anr了
作者: rin841005 (Rinex)   2020-05-29 18:10:00
耗時的工作要在另外的執行緒執行, onPostExecute已經在主執行緒了, 應該要寫在doInBackground
作者: kobe8112 (小B)   2020-05-29 18:29:00
嗯....這個例外的英文不是超級白話嗎= =?
作者: akito117 (宗益)   2020-05-31 13:48:00
感謝(椅腦s・`)感謝

Links booklink

Contact Us: admin [ a t ] ucptt.com