不知道为什么返回的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();
}
}
}