2013-03-21 58 views
0

如果手機的屏幕完全關閉,但手機沒有進入睡眠狀態,有可能嗎?電話不睡覺?

我有一個應用程序,它會在設備進入睡眠狀態時執行一些操作。我註冊了廣播意圖:Intent.ACTION_SCREEN_OFF

在我的設備上應用程序正常工作(HTC Desire,cyanogenmod)。當屏幕關閉時,我的應用程序被激活。

我在另一部手機(HTC Wildfire S,官方薑餅)上嘗試了應用程序,這裏是奇怪的部分。當屏幕熄滅時,我的應用程序沒有被激活(有時它是10%)。所以我把它與我的LOGCAT連接起來,我想知道當屏幕關閉時設備是否真的進入睡眠狀態,並且事情是當我的電腦連接時,設備總是進入睡眠狀態,我的應用程序被激活。

從froyo到果凍豆應用程序的模擬器工作完美。我的應用有問題嗎?

+1

。也許內核不會入睡。你嘗試過其他手機嗎? – 2013-03-21 15:41:16

+0

嗯,根植設備應用程序工作正常。在官方ROM上,它不工作。我到目前爲止在兩個真實設備上進行了測試我將在今天再測試兩次(當我把它們放在我手中) – rootpanthera 2013-03-21 15:42:45

+0

那麼它可能仍然是內核,也許內置的官方ROM不會進入睡眠狀態。 – 2013-03-21 15:43:29

回答

0

從我對屏幕狀態廣播的測試中,我瞭解到不同的製造商以不同的方式處理屏幕的意圖。不能真正依靠手機。 如果該設備是植根它可能是它使用的內核,您可能需要使用電源管理器中的onPause檢測設備的狀態,並採取行動appropirate()

public static boolean isDeviceScreenOn(Context argContext) { 
    PowerManager pm = (PowerManager) argContext.getSystemService(Context.POWER_SERVICE); 
    return pm.isScreenOn(); 
}