2013-08-05 106 views
0

我已經實現了一個udp數據包收件人線程,該線程偵聽UDP數據包的接收。當屏幕打開時它工作正常。當按下電源按鈕時,設備進入睡眠模式。之後,它不接收任何UDP數據包。只有當屏幕進入ON狀態時纔會收到數據包。索尼Xperia Z平板電腦並非如此。它始終接收UDP數據包,無論屏幕處於開啓或關閉狀態。在Android中,UDP數據包未在睡眠模式下收到

我已經使用了PowerManager.PARTIAL_WAKE_LOCK來確保CPU在睡眠模式下運行。但是沒有什麼區別。我想知道是什麼導致UDP數據包在睡眠模式下被阻塞。請幫我理解爲什麼UDP數據包在接收時被阻塞,誰阻塞?而且我正在爲此尋找解決方案。

回答

0

嘗試使用WiFi鎖定:

WifiLock WL =((WifiManager)getSystemService(Context.WIFI_SERVICE))createWifiLock(WifiManager.WIFI_MODE_FULL 「wifi_lock」); wl.acquire();

...做你的東西在這裏,並在完成時:

wl.release();