异常:android.os.NetworkOnMainThreadException

场景:

安卓开发时在主线程访问网络
解决:

将访问网络的代码使用Thread操作

Handler handler = new Handler(){
    @Override
    public void handleMessage(Message msg){
        Bundle data = msg.getData();
        //从data中拿出存的数据
        String val = data.getString("value");
        //将数据进行显示到界面等操作
    }
};
Runnable runnable = new Runnable(){
    @Override
    public void run(){
        //进行访问网络操作
        Message msg = Message.obtain();
        Bundle data = new Bundle();
        data.putString("value", "存放数据");
        msg.setData(data);
        handler.sendMessage(msg);
    }
};

猜你喜欢

转载自www.cnblogs.com/hujingnb/p/10246182.html