我是 Android 和 Java 编程的新手,我被困住了。
我能够创建一个 TCP/IP 通信客户端(通过 LAN),它在基于 Windows 的 Web 服务器上发送文本消息。该代码在我目前在 2.3.6 上运行的三星 Galaxy S Advance 手机上运行良好。但是,在运行 Android 4.0 和 Android 4.1 的其他两台设备上尝试 apk 文件时,应用程序正在运行,但 PC 上没有收到任何消息(测试是在同一网络上进行的)。
我用于发送数据包的功能如下:
public void sednit(String IP,String MSG) {
try {
// Socket s = new Socket ("192.168.128.102",39999);
Socket s = new Socket (ipaddress,39999);
//outgoing stream redirect to socket
OutputStream out = s.getOutputStream();
PrintWriter output = new PrintWriter (out);
output.println(MSG);
output.flush();
BufferedReader input = new BufferedReader (new InputStreamReader(s.getInputStream)));
//read line(s)
String st = input.readLine();
//Close connection
s.close();
} catch (Exception e) {
// Toast.makeText(getApplicationContext(), e.toString(),Toast.LENGTH_LONG).show();
Toast.makeText(getApplicationContext(), "Unable to communicate with player", Toast.LENGTH_LONG).show();
}
我究竟做错了什么?
Android 4 及更高版本是否有任何限制,或者我弄乱了我的清单文件?
谢谢你。