解决方案 »

  1.   

    <uses-permission android:name="android.permission.INTERNET"/>
      

  2.   

    android4.0后,这种代码不能写在主线程里面, 可以放在自定义的线程里面,  或者在setContentView下面加上if (android.os.Build.VERSION.SDK_INT > 9) {
        StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build();
        StrictMode.setThreadPolicy(policy);
    }
    这个试试,不过这样写不好, 最好还是放在自己定义一个thread里面
      

  3.   

    new Thread(){
    public void run(){
    try{
    URL url=new URL("http://www.bing.com/");
    HttpURLConnection connection=(HttpURLConnection)url.openConnection();
    connection.setDoInput(true);
    connection.setDoOutput(true);
    connection.setRequestMethod("POST");
    connection.setUseCaches(false);
    connection.connect();
    DataOutputStream dos=new DataOutputStream(connection.getOutputStream());
    String params=URLEncoder.encode("name=123456","gb2312");
    dos.write(params.getBytes());
    dos.flush();
    dos.close();
    InputStreamReader isr=new InputStreamReader(connection.getInputStream());
    BufferedReader br=new BufferedReader(isr);
    String tempResult=null;
    String result=null;
    while((tempResult=br.readLine())!=null){
    result+=tempResult+"\n";
    }
    Message msg1 = new Message();
                            msg1.what = 100;
                            msg1.obj = result;
                            handler1.sendMessage(msg1);
    br.close();
    isr.close();
    }catch(IOException e){
    e.printStackTrace();
    }
    }
    }.start();
    }
    });
        } 
    private Handler handler1=new Handler(){
    public void handleMessage(Message msg1){
    switch (msg1.what){
    case 100:
    text.setText(msg1.obj.toString());
    break;
    }
    };
    };
    android4.0 以后不允许主线程直接访问网络 需要new thread  这是我前几天测试的 希望对你有用