【发布时间】:2016-11-29 08:38:20
【问题描述】:
我需要在配置为接入点的 ESP8266 芯片之间发送简单整数。
我已经阅读了这个问题: Sending data to ESP8266 Wi-Fi chip from Android device
但我不明白如何使用 TCP 套接字来接收和发送数据,因为 ESP8266 只能使用 AT 命令控制。
有人可以提供深入的解释吗?
来自应用程序的代码 sn-p:
Socket client;
String ip = "192.111.1.1";
int port = 80;
int connectTimeout = 20;
String message = "Test123";
try{
client = new Socket();
client.connect(new InetSocketAddress(ip, port), connectTimeout);
DataOutputStream DataOut = new DataOutputStream(client.getOutputStream());
DataOut.writeBytes(message);
DataOut.flush();
client.close();
} catch(UnknownHostException e) {
e.printStackTrace();
} catch(IOException e) {
e.printStackTrace();
}
【问题讨论】:
-
您使用套接字的方式与往常一样。你需要一个服务器和一个客户端。
-
但是我要如何使用 AT 命令来做到这一点?
-
如果你做服务器,你可以做你想做的事。没有 AT。
-
发布 logcat 以查看哪个异常导致您的应用崩溃。我敢打赌是
NetworkOnMainThreadException。 -
你不必使用默认的 esp 固件,你可以编写一个自定义的 arduino 草图来做一些花哨的网络事情。 AT 命令更适合用作 arduino 模块。
标签: java android sockets wifi esp8266