1. 程式人生 > >HttpUrlConnection訪問百度,不知道為什麼返回的url資料有錯,loaddata不出來,之前用模擬器還沒錯,用真機就出不來百度了

HttpUrlConnection訪問百度,不知道為什麼返回的url資料有錯,loaddata不出來,之前用模擬器還沒錯,用真機就出不來百度了

不知道為什麼返回的url資料有錯,loaddata不出來,之前用模擬器還沒錯,用真機就出不來百度了
public class HttpThread extends Thread {

    private final String url;

    private Handler handler;

    public WebView webView;

    public ImageView imageView;

    public HttpThread(String url, WebView webView, Handler handler) {
        this.url = url;
        this.webView = webView;
        this.handler = handler;
    }

    public HttpThread(String url,ImageView imageView,Handler handler)
    {
        this.imageView=imageView;
        this.url =url;
        this.handler=handler;
    }
    @Override
    public void run() {
            URL httpUrl = null;
            try {
            httpUrl = new URL(url);
            HttpURLConnection conn = (HttpURLConnection) httpUrl.openConnection();
            conn.setReadTimeout(5000);
            conn.setRequestMethod("GET");
            conn.setDoInput(true);
            conn.connect();
            final StringBuffer sb = new StringBuffer();
            BufferedReader reader = new BufferedReader(new InputStreamReader(conn.getInputStream()));//IO流轉為位元組流
            String str;
            while ((str = reader.readLine()) != null) {
                sb.append(str);
            }
            handler.post(new Runnable() {
                @Override
                public void run() {
                       //讀入流,不知道為什麼data有錯,就是sb.tostring有錯
                   webView.loadData(sb.toString(), "text/html; charset=UTF-8", null);
                   Log.i("ljl", sb.toString());
                }
            });
            } catch (IOException e) {
                e.printStackTrace();
            }
    }
}