2013-02-27 100 views
2

我有一個android設備通過漫遊服務與FTP服務器交換數據的場景。我希望通過在數據傳輸期間設置WakeLock類型來使OS進入正常的睡眠模式,因爲它實際上沒有與最終用戶交互。Android手機,什麼單位被關閉在睡眠模式下

我正在通過睡眠線程並試圖驗證哪些單元將在睡眠模式下關閉以防止數據發送。到目前爲止,沒有官方文件顯示它們。

那麼,請您幫助啓發我的問題:當Android進入睡眠模式時,哪些組件將停止工作,如WIFI,數據漫遊?

非常感謝。

回答

2

當Android進入睡眠模式時,幾乎所有的東西都被關閉。只有基本的系統應用程序和GSM/CDMA無線電接收文本,電話,推送通知等。服務,活動全部關閉,CPU進入低功耗模式。根據用戶在wifi設置中選擇的內容,wifi連接可能會或可能不會切換到移動數據或完全關閉。

如果要繼續處理,但不需要屏幕與用戶交互,則應該獲取屏幕和鍵盤已關閉的PARTIAL_WAKE_LOCK,但CPU仍處於開啓狀態。但是,請記住在完成後釋放喚醒鎖,因爲PARTIAL_WAKE_LOCK是四個喚醒鎖中唯一一個CPU將繼續運行,直到您釋放它或者您的應用程序被終止的鎖。忘記釋放喚醒鎖可能會對用戶的電池造成巨大的損耗。

+0

非常感謝。還有一個問題,是否有任何官方文檔詳細介紹Android的睡眠信息。我想進一步調查這個話題。 – user1338624 2013-02-27 05:49:24

+0

特別是BT和BLE,它是否在睡眠模式下運行? – 2015-03-18 11:00:18

0

當用戶按下關機按鈕(熄滅)後,進入睡眠模式。

睡眠模式表示CPU將處於睡眠模式,並且只接受來自無線電接口層和警報的命令。在幾秒鐘內,CPU將進入睡眠模式。

當我們只需要CPU和其他東西,我們使用PARTIAL_WAKE_LOCK,它適合您的情況下完美。天氣這個鎖是在像MP3播放器的應用程序通常使用等

當你想在這個模式下這裏的數據傳輸,那麼你必須通過允許一些功能覆蓋從類電源管理器已經給出的方法具有特別是在這種模式下開啓。

+0

@suninsky對不起,我沒有得到你? – 2014-07-16 05:24:01

+0

我真的很抱歉,當我回顧它時,我認爲你的答案是一個問題。我正在刪除我以前的評論。謝謝! – 2014-07-16 05:40:18

相關問題