在Android中,在睡眠模式下未接收到UDP数据包
我已经实现了一个udp数据包接收器线程,它监听udp数据包的接收。当屏幕打开时,它工作正常。当按下电源按钮时,设备进入睡眠模式。之后,它不会接收任何UDP数据包。只有当屏幕处于打开状态时,它才会接收数据包。索尼Xperia Z平板电脑并非如此。无论屏幕打开或关闭状态如何,它始终接收UDP数据包 我使用了PowerManager.PARTIAL_WAKE_LOCK来确保CPU在睡眠模式下运行。但这没有什么区别。我想知道是什么原因导致UDP数据包在睡眠模式下被阻塞。请帮助我理解为什么UDP数据包在接收时被阻止,是谁阻止了它?我也在寻找解决办法 尝试使用WiFi锁定: WifiLock wl=((WifiManager)getSystemService(Context.WIFI_SERVICE)).createWifiLock(WifiManager.WIFI_MODE_FULL,“WIFI_lock”); wl.acquire() 。。。在这里完成您的工作,完成后:在Android中,在睡眠模式下未接收到UDP数据包,android,udp,Android,Udp,我已经实现了一个udp数据包接收器线程,它监听udp数据包的接收。当屏幕打开时,它工作正常。当按下电源按钮时,设备进入睡眠模式。之后,它不会接收任何UDP数据包。只有当屏幕处于打开状态时,它才会接收数据包。索尼Xperia Z平板电脑并非如此。无论屏幕打开或关闭状态如何,它始终接收UDP数据包 我使用了PowerManager.PARTIAL_WAKE_LOCK来确保CPU在睡眠模式下运行。但这没有什么区别。我想知道是什么原因导致UDP数据包在睡眠模式下被阻塞。请帮助我理解为什么UDP数据包在接
wl.release() 此线程处理以下问题: 基本上,解决办法是 获取部分唤醒锁定,并在屏幕关闭时捕获。 然后禁用并重新启用wifi。这是因为过滤器 只有在屏幕关闭时才会打开,因此使用 screen off(屏幕关闭)将保持其工作,直到屏幕再次关闭