我想在使用Android鎖定屏幕時識別搖動事件。 我做了一個服務在後臺運行,但是當屏幕鎖定時,它不起作用。如何在屏幕鎖定時運行服務?
屏幕鎖定時是否可以運行服務? 如果沒有,是否有一個workarround :)
我想在使用Android鎖定屏幕時識別搖動事件。 我做了一個服務在後臺運行,但是當屏幕鎖定時,它不起作用。如何在屏幕鎖定時運行服務?
屏幕鎖定時是否可以運行服務? 如果沒有,是否有一個workarround :)
的服務關閉時,手機被鎖定
沒有,服務不「下」。 CPU關閉。當屏幕變黑時,設備通常會進入睡眠模式,沒有任何東西在運行。這很正常。此外,爲用戶提供體面的待機電池壽命至關重要。
如果您想在屏幕關閉的情況下讓設備保持運行一兩分鐘,請使用WakeLock
。
WakeLock確實有效:) –
如果用戶明確鎖定屏幕,是否有一種方法可以保持「Service」運行(不一定能檢測傳感器變化)? 'WakeLock'在這裏沒有多大幫助。 – alex
@alex:顯式鎖定屏幕應該對服務沒有影響,因爲屏幕本身對服務沒有影響。重要的是當CPU關機時,這就是'WakeLock'進來的地方。 – CommonsWare
解鎖手機,然後搖動。 :)因此,當手機被鎖定時,您的服務無法檢測到任何振動事件?這是有道理的,因爲你如何分辨某人慢跑,口袋裏是否有電話,想要搖動手機? –
什麼不行?屏幕鎖定後,您的代碼是否沒有執行?我建議分享您的相關代碼... – Knickedi
是的,服務在屏幕鎖定時不工作。當我解鎖手機時,再次開始工作。手機鎖定時服務停止。 –