调试/SntpClient(70):请求时间失败:java。网SocketException:Android上的协议不支持地址族
我创建如下代码:
try {
int ct_id;
String ct_name;
try{
HttpClient httpclient = new DefaultHttpClient();
HttpPost httppost = new HttpPost("http://10.0.2.2/update.php");
httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
HttpResponse response = httpclient.execute(httppost);
HttpEntity entity = response.getEntity();
is = entity.getContent();
}catch(Exception e){
Log.e("log_tag", "Error in http connection"+e.toString());
}
//convert response to string
try{
BufferedReader reader = new BufferedReader(new InputStreamReader(is,"iso-8859-1"),8);
sb = new StringBuilder();
sb.append(reader.readLine() + "\n");
String line="0";
while ((line = reader.readLine()) != null) {
sb.append(line + "\n");
}
is.close();
result=sb.toString();
}catch(Exception e){
Log.e("log_tag", "Error converting result "+e.toString());
}
//paring data
int max = 0;
try{
jArray = new JSONArray(result);
JSONObject json_data=null;
for(int i=0;i<jArray.length();i++){
json_data = jArray.getJSONObject(i);
ct_id=json_data.getInt("max(id)");
ct_name=json_data.getString("date");
max = ct_id;
}
}
catch(JSONException e1){
} catch (ParseException e1) {
e1.printStackTrace();
}
但当我调试时,它出现了:
07-03 08:50:42.657: DEBUG/SntpClient(70): request time failed: java.net.SocketException: Address family not supported by protocol
这是什么意思?如何解决呢
# 1 楼答案
这看起来像一个本地url,你确定你的apache运行在端口80上吗?你能试着在桌面浏览器中访问这个url http://10.0.2.2/update.php吗?你看得清楚吗。此错误通常仅在套接字无法与服务器建立连接时出现