Android Eclipseproject开发中的常见调试问题(二)android.os.NetworkOnMainThreadException 异常的解决的方法

android.os.NetworkOnMainThreadException 异常的解决的方法。

刚开是把HttpURLConnectionnection 打开连接这种方法放在UI线程里了,可能不是线程安全的,并且这种方法请求是须要等待的,所以就抛出了这个异常,后来用子线程打开的HttpURLConnection, 一切就都正常了。仅仅要在主线程里开启子线程即可了。

子线程利用URL

问题解决。以下贴一段代码

				String file1 = SERVER_PATH;
				URL url = new URL(file1);
				HttpURLConnection httpconn = (HttpURLConnection) url
						.openConnection();
				int responseCode = httpconn.getResponseCode();
				if (responseCode != HttpURLConnection.HTTP_OK) {
					Log.d(MP3, file1 + " server故障");
					mainHandler.sendEmptyMessage(NET_SERVER_ERROR);
				}
链接正常,返回200后。就能够打开流接受字节了。

InputStream is = httpconn.getInputStream(); BufferedReader bfr = new BufferedReader(new InputStreamReader(is));

...后面的就略去了


posted @ 2018-04-23 14:36  zhchoutai  阅读(219)  评论(0编辑  收藏  举报