尝试使用以下代码从Android应用程序向php服务器发送数据时 -
@Override
protected ServerResponseBean doInBackground(LoginBean... params) {
String innerResult="-1";
ServerResponseBean objSRBean = null;
DefaultHttpClient client=new DefaultHttpClient();
try{
HttpPost request =new HttpPost(UPDATE_LOGIN_LOCATION_URL);
List<NameValuePair> param=new ArrayList<NameValuePair>();
param.add(new BasicNameValuePair(TAG_ID, params[0].getLoginID()+""));
UrlEncodedFormEntity entity=new UrlEncodedFormEntity(param);
request.setEntity(entity);
HttpResponse response = client.execute(request);
if(response!=null){
InputSource in = new InputSource(response.getEntity().getContent());
InputStream isr=in.getByteStream();
innerResult= readData(isr);
isr.close();
}
}catch(UnknownHostException uhe){uhe.printStackTrace();}
catch(Exception e){e.printStackTrace();}
上面的代码工作正常,但有时应用程序因为UnknownHostException崩溃,因为我的服务器工作正常。即使我已经添加了互联网连接可用性的验证,即如果连接可用,那么只在后台执行任务,否则要求用户启用互联网连接。
提供处理异常的建议。