这可能听起来很具体,但我希望有人可以帮助我。这将不胜感激。我有一个我正在研究Arduino的项目,(目前),我想要一个Android设备,将数据发送到Arduino,然后Arduino将它显示在LCD屏幕上。我完全完成了Arduino的东西,所以只是Android的东西让我陷入困境。我通过在URL中发送请求将数据加载到Arduino上的方式,例如我想放
http://IP_ADDR/?1=VARIABLE_ONE&2=VARIABLE_TWO
。
但是我不知道如何在Android上执行此操作,大多数HTTP教程都在讨论HTML中的POST和GET方法。我想知道我是否有办法向该ip发送请求,其中包含变量,但不显示设备上的实际网页?
答案 0 :(得分:1)
首先,请求访问网络的权限,在清单中添加以下内容:
<uses-permission android:name="android.permission.INTERNET" />
然后最简单的方法是使用与Android捆绑的Apache http客户端:
HttpClient httpclient = new DefaultHttpClient();
HttpResponse response = httpclient.execute(new HttpGet("http://IP_ADDR/?1=VARIABLE_ONE&2=VARIABLE_TWO"));
StatusLine statusLine = response.getStatusLine();
if(statusLine.getStatusCode() == HttpStatus.SC_OK){
ByteArrayOutputStream out = new ByteArrayOutputStream();
response.getEntity().writeTo(out);
out.close();
} else{
//Closes the connection.
response.getEntity().getContent().close();
throw new IOException(statusLine.getReasonPhrase());
}
这样您就可以执行查询而无需获得任何响应