Java 使用UDP从Android设备向计算机发送数据
我希望将android设备捕获的实时图像发送到运行UDP服务器的计算机。我希望开始这个项目使用一个简单的数据,如字符串。但是,我无法从Android设备向运行Netbeans中UDP服务器的计算机发送字符串 Android代码-客户端:(此代码驻留在on按钮单击侦听器中) PC上的Java代码-服务器:Java 使用UDP从Android设备向计算机发送数据,java,android,network-programming,udp,Java,Android,Network Programming,Udp,我希望将android设备捕获的实时图像发送到运行UDP服务器的计算机。我希望开始这个项目使用一个简单的数据,如字符串。但是,我无法从Android设备向运行Netbeans中UDP服务器的计算机发送字符串 Android代码-客户端:(此代码驻留在on按钮单击侦听器中) PC上的Java代码-服务器: public class Server { public static void main(String[] args) { try { byte[] receiveD
public class Server {
public static void main(String[] args) {
try {
byte[] receiveData = new byte[1024];
DatagramSocket datagramSocket = new DatagramSocket(2222);
DatagramPacket datagramPacket = new DatagramPacket(receiveData, receiveData.length);
datagramSocket.receive(datagramPacket);
System.out.println("Datagram Packet Received");
String message = new String(datagramPacket.getData());
System.out.println(message);
} catch (Exception ex) {
System.out.println(ex.getMessage());
}
}
}
当你说你“无法发送字符串”时,你能详细说明一下吗?当你尝试时会发生什么?在发送端或接收端是否有异常?如何在两端创建和初始化套接字?而且你知道UDP是一个不可靠的协议(如果你使用它,你将不得不相信你会丢弃数据包)?是的。我知道UDP是一个不可靠的协议。当我启动Android应用程序并发送字符串时,它将强制关闭!我正在尝试调试android代码,但在日志中没有收到任何消息。除了互联网之外,android清单中是否还需要添加其他权限?
public class Server {
public static void main(String[] args) {
try {
byte[] receiveData = new byte[1024];
DatagramSocket datagramSocket = new DatagramSocket(2222);
DatagramPacket datagramPacket = new DatagramPacket(receiveData, receiveData.length);
datagramSocket.receive(datagramPacket);
System.out.println("Datagram Packet Received");
String message = new String(datagramPacket.getData());
System.out.println(message);
} catch (Exception ex) {
System.out.println(ex.getMessage());
}
}
}