我正在尝试从计算机向Android手机发送一条简单的短信。手机位于同一WiFi网络上,我正在将tutorial here用于android服务器。当它收到一个连接时,我记录如下消息:
String read;
Log.i("COB", "test log");
while((read = input.readLine()) != null) {
Log.i("COB", read);
}
在android studio中的logcat中,它显示日期和时间,但不显示消息:
06-25 09:55:12.213 9573-9648/cob.vivid.app I/COB﹕ test log
06-25 09:55:12.213 9573-9648/cob.vivid.app I/COB﹕ [ 06-25 09:55:12.424 1025: 1079 D/WifiStateMachine ]
我将ncat用于Windows,并在以下命令中键入以下内容:
echo messageTest & echo. | ncat {IP ADDRESS} {PORT}
显然,我使用实际的IP和端口。
我知道该连接有效,因为一旦输入ncat命令,它就会打印出日志,但是我不明白为什么它也不会打印消息。另外,什么是1025:1079?
最佳答案
您必须发送EOL字符。没有它,该行将无法完成,readLine将不会返回它。
另外,您还要看一下NanoHTTPD,它是HTTP服务器实现,可在Android上顺利运行,因此您无需从头开始做所有工作。