【发布时间】:2015-01-04 04:24:09
【问题描述】:
我有一台服务器,我使用以下链接在我的数据库中发布数据
http://URL.php?action=insert&vhc=vehiclenumber&mobile=mobilenumberoftheperson&time=currenttime
为了记录车辆进入时间,现在我想从我使用以下代码的 Android 发布相同的数据:
内部按钮是这样的:
button.setOnClickListener(new View.OnClickListener() {
//Toast.makeText(getApplicationContext(),"Data is tried!", Toast.LENGTH_LONG).show();
public void onClick(View v)
{
new Thread(new Runnable() {
public void run() {
postData();
}
}).start();
}
});
我的 PostData 函数定义如下:
public void postData() {
// Create a new HttpClient and Post Header
HttpClient httpclient = new DefaultHttpClient();
HttpPost httppost = new HttpPost("url.php");
try {
List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(2);
nameValuePairs.add(new BasicNameValuePair("vhc", "ABC124"));
nameValuePairs.add(new BasicNameValuePair("mobile", "089944440000"));
nameValuePairs.add(new BasicNameValuePair("time", "2014-12-28 22:22:52"));
httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
// Execute HTTP Post Request
HttpResponse response = httpclient.execute(httppost);
} catch (ClientProtocolException e) {
message = e.getMessage();
// TODO Auto-generated catch block
} catch (IOException e) {
message= e.getMessage();
// TODO Auto-generated catch block
}
}
现在我尝试调试并发现它在 HttpResponse response = httpclient.execute(httppost); 处失败步骤并将其引导至 IOException,请指出我的错误以解决问题。谢谢!
【问题讨论】:
-
URL.php 不是有效的网址。发布你的 logcat。
-
我只是做了这个 URL 来显示,实际是 www.websiteServer.com/myDBname.php?action=insert&vhc=vehiclenumber 等
-
使用异步库,例如改造。至少使用异步任务不要为此创建线程。