Android 4.0的一个问题
貌似到了4.0开始,ui线程就不可以用httpclient执行网络相关的操作,都会报异常,而在2.2和2.3上是不会发生的。所以这段时间遇到很多怪异的问题,在我的手机上可以执行,而在客户的手机上就不行。特别是一些新三方SDK,你得钻进去才能发现问题所在。
如果代码嵌得太深而无法再抽得出来用handler的话,那有一个暂时的解决方案,就是所有在ui线程操作网络的代码都放进一个线程里执行,然后让这个线程join到ui线程上,这样就可以了。
下面是代码:
1
Thread thread = new Thread() {
2
public void run() {
3
// you httpclient code.
4
}
5
};
6
thread.start();
7
thread.join();
作者:Kut.Zhang
补充:移动开发 , Android ,