Android中开通了子线程用于处理网络查询,但是在子线程中却抛出异常:android.view.ViewRootImpl$CalledFromWrongThreadException。
一般在Android程序中,为了控制UI线程,都会控制主线程的时间,一般是5秒,因为我开通了子线程,而且这个线程需要通过HTTP协议获取服务器上的数据,所以,比较耗时。而且,在子线程中需要对UI组件的更新操作,所以,线程超时,导致android.view.ViewRootImpl$CalledFromWrongThreadException的异常。
官方推荐解决方案:引入AsyncTask类,重写doInBackground方法和onPostExecute方法。