1.需求要求 替换谷歌404,500等页面,采用webview加载网址
2.问题 网上搜索N 多资料,都提示用 onReceivedError() 方法来判断!那么问题来了,这个方法不调用,根本用不了!
3.解决思路,采用 http请求,得到 httpResponse.getStatusLine().getStatusCode() ,根据返回状态来判断
4.代码
public static void getRespStatus(final Handler handler,final String url) {
new Thread(new Runnable() {
@Override
public void run() {
HttpClient client=new DefaultHttpClient();
HttpGet get=new HttpGet(url);
try {
HttpResponse httpResponse=client.execute(get);
if (200==httpResponse.getStatusLine().getStatusCode()) {
//网址正常
handler.sendEmptyMessage(200);
}else{
handler.sendEmptyMessage(404);
}
} catch (ClientProtocolException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}).start();
}
5.根据handler 来显示内容