这里是我的代码:异常android.os.NetworkOnMainThreadException “ ”代码“: ”503“
private static JSONObject doGetRequest(String url) throws JSONException {
System.out.println("doGetRequest > url : " + url);
JSONObject json = null;
HttpClient httpClient = new DefaultHttpClient();
HttpGet httpGet = new HttpGet(url);
HttpResponse response;
System.out.println("doGetRequest > httpGet " + httpGet);
try {
System.out.println("doGetRequest > before response ");
response = httpClient.execute(httpGet);
System.out.println("doGetRequest > response " + response);
if(response.getStatusLine().getStatusCode() == 200) {
HttpEntity entity = response.getEntity();
if (entity != null) {
InputStream instream = entity.getContent();
String result = convertStreamToString(instream);
instream.close();
json = new JSONObject(result);
}
} else {
json = oDeskRestClient.genError(response.getStatusLine().getStatusCode(), response.getStatusLine().toString());
}
} catch (ClientProtocolException e) {
json = oDeskRestClient.genError(HTTP_RESPONSE_503, "Exception: ClientProtocolException");
} catch (IOException e) {
json = oDeskRestClient.genError(HTTP_RESPONSE_503, "Exception: IOException");
} catch (JSONException e) {
json = oDeskRestClient.genError(HTTP_RESPONSE_503, "Exception: JSONException");
} catch (Exception e) {
json = oDeskRestClient.genError(HTTP_RESPONSE_503, "Exception: Exception " + e.toString());
} finally {
httpGet.abort();
}
System.out.println("doGetRequest > json: " + json);
return json;
}
我得到异常:异常android.os.NetworkOnMainThreadException”, “代码”:“503 “ on this line:HttpClient httpClient = new DefaultHttpClient();
任何人都可以帮我解决这个错误吗?
谢谢
你在哪儿叫这个方法?您不能在主线程中使用此方法。 – 2013-04-05 22:33:01
请谷歌'android.os.NetworkOnMainThreadException'。在问这个问题之前,你应该找到http://stackoverflow.com/questions/6343166/android-os-networkonmainthreadexception。 – 2013-04-05 23:13:26
谢谢史蒂芬,它的工作。 – 2013-04-06 10:41:39