http://blog.csdn.net/carabbit/article/details/7075944
最近做个小东西,发现手机怎么也接收不到电脑发出去的广播数据包。后来上网查,不少人都有这个问题,有人说是手机的硬件bug。
后来在谷歌文档找了半天,突然发现原来是系统默认是把广播接收锁住了,因为接收广播非常耗电。
但是有时还是需要打开的,当然了,用完建议关闭。
- WifiManager wifiManager = (WifiManager) getSystemService(WIFI_SERVICE);
- WifiManager.MulticastLock multicastLock = wifiManager.createMulticastLock("multicastLock");
- multicastLock.acquire();
最后需要在配置文件中增加许可
- <uses-permission android:name="android.permission.CHANGE_WIFI_MULTICAST_STATE" />