[问题] 请问从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