Android使用wifi通过UDP协议发送广播数据包给PC接收不到问题解决方法
2012-09-21 11:32
2491 查看
最近在写一个android到PC端的一个通过UDP协议传输广播数据包的问题。
使用自己搭建了一个网络框架:
connector = new DMUDPConnector();
String ip;
try {
ip = WifiUtils.getHotspotIPAddress();
} catch (WifiException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
connector.registerAMessagepoolUsingDefault((byte) 0, StringUDPMessage.class);
connector.runListenReceiveUPDThread(8999,ip,1000,
new UDPMessageListener() {}
实例化datagramSocket以后,然后通过
message.setIpTo(“255.255.255”).setPortTo(8999);
connector.sendUDPMessageViaAnotherThread(message, true);
这里,在框架里面是使用下面的方法实例化 datagramSocket的
dataSocket = new DatagramSocket(listenPort,InetAddress.getByName(binip));
但是 奇怪的是无论如何 无论是手机自身还是PC端都不能接收到这个数据包。
开始以为是没有设置 this.dataSocket.setBroadcast(true);
不过 = =!
经过几番周折,结果发现是一开始就有问题:
dataSocket = new DatagramSocket(listenPort);
如果datagramSocket在实例化的时候不指定 IP 而只指定port。那么就可以了。
使用自己搭建了一个网络框架:
connector = new DMUDPConnector();
String ip;
try {
ip = WifiUtils.getHotspotIPAddress();
} catch (WifiException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
connector.registerAMessagepoolUsingDefault((byte) 0, StringUDPMessage.class);
connector.runListenReceiveUPDThread(8999,ip,1000,
new UDPMessageListener() {}
实例化datagramSocket以后,然后通过
message.setIpTo(“255.255.255”).setPortTo(8999);
connector.sendUDPMessageViaAnotherThread(message, true);
这里,在框架里面是使用下面的方法实例化 datagramSocket的
dataSocket = new DatagramSocket(listenPort,InetAddress.getByName(binip));
但是 奇怪的是无论如何 无论是手机自身还是PC端都不能接收到这个数据包。
开始以为是没有设置 this.dataSocket.setBroadcast(true);
不过 = =!
经过几番周折,结果发现是一开始就有问题:
dataSocket = new DatagramSocket(listenPort);
如果datagramSocket在实例化的时候不指定 IP 而只指定port。那么就可以了。
相关文章推荐
- Android环境下接收系统灭屏广播遇到延时问题的一个解决方法
- Android开发静态注册广播接收不到的问题的解决办法
- Python中使用socket发送HTTP请求数据接收不完整问题解决方法
- 使用Outlook发送邮件至移动设备导致移动设备接收winmail.dat问题解决方法
- Python中使用socket发送HTTP请求数据接收不完整问题解决方法
- android模拟器接收不到UDP数据包解决方法
- Android收发UDP报文详解 及 优雅解决接收不到问题
- iOS开发工具-如何使用网络封包分析工具Charles,通过配置proxy对http、https、tcp、udp 等协议的请求响应过程交互信息进行分析、判断、解决我们移动开发中的遇到的各种实际问题。
- android中通过添加view使用ViewPager出现的问题及解决方法
- VB中多个Winsock连续发送出现接收不到的异常问题解决方法
- Android socket 使用PrintWriter和BufferedReader发送和接收出现乱码问题解决
- 详解解决使用axios发送json后台接收不到的问题
- 记录关于android广播(无序)接收不到的问题解决思路
- OSX Mavericks下使用Synergy进行多台主机通过wifi共享键鼠问题的解决方法
- Android解决使用广播监听网络状态变化时接收到多个广播的问题
- Android作为服务器通过USB使用Socket协议向PC客户端发送文件
- 解决angular的post请求后SpringMVC后台接收不到参数值问题的方法
- Android使用WebView无法定位问题的解决方法
- 基于Android热点的局域网UDP广播,部分手机收不到UDP报文的问题
- 在.NET中发送邮件,使用回执功能中遇到问题的解决方法[在NOTES服务器上,C#,.NET2.0环境]