将数据从 android 发送到 esp8266
Sending data from android to esp8266
我有一个 arduino 项目,我可以在其中将 esp8266 设置为网络服务器,并且可以向它发送数据,例如。如果我将“http://192.168.4.1/get?data=010”放入浏览器,它会完美运行。
我想使用 android 应用程序发送数据,这几乎意味着使用上面提到的 url,只是“数据”的值不同。
我试过使用 okhttp3,但它不起作用。
这是我尝试过的:
public void sendMessage(View view) throws IOException {
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("http://192.168.4.1/get?data=010")
.build();
Call call = client.newCall(request);
call.enqueue(new Callback() {
public void onResponse(Call call, Response response)
throws IOException {
System.out.println(response.toString());
}
public void onFailure(Call call, IOException e) {
System.out.println("Failed");
}
});
}
这似乎适用于其他 api,例如。如果我输入 https://reqres.in/api/users?page=2 作为 url 我会收到回复,但是当我尝试连接到 arduino 时,它什么也没做。
将 android:usesClearTextTraffic="true"
添加到 AndroidManifest.xml 文件解决了问题。
感谢您的回答blackapps。
我有一个 arduino 项目,我可以在其中将 esp8266 设置为网络服务器,并且可以向它发送数据,例如。如果我将“http://192.168.4.1/get?data=010”放入浏览器,它会完美运行。
我想使用 android 应用程序发送数据,这几乎意味着使用上面提到的 url,只是“数据”的值不同。
我试过使用 okhttp3,但它不起作用。
这是我尝试过的:
public void sendMessage(View view) throws IOException {
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("http://192.168.4.1/get?data=010")
.build();
Call call = client.newCall(request);
call.enqueue(new Callback() {
public void onResponse(Call call, Response response)
throws IOException {
System.out.println(response.toString());
}
public void onFailure(Call call, IOException e) {
System.out.println("Failed");
}
});
}
这似乎适用于其他 api,例如。如果我输入 https://reqres.in/api/users?page=2 作为 url 我会收到回复,但是当我尝试连接到 arduino 时,它什么也没做。
将 android:usesClearTextTraffic="true"
添加到 AndroidManifest.xml 文件解决了问题。
感谢您的回答blackapps。