2015-11-04 59 views

回答

1

是的,你可以。你必須創建一個接收器和監聽兩個目的:

ACTION_BOOT_COMPLETED - for finding out the device boot 
ACTION_SHUTDOWN - for finding out when the device is powered off 

從那裏,你可以有,保持的設備啓動的時間跟蹤和節省時間的後臺運行的服務設備已開啓。您可以將其記錄在文件或數據庫中或共享首選項中,稍後再檢索。

爲了計算屏幕有多長,你必須有一個接收器監聽這兩個意圖:

ACTION_SCREEN_ON 
ACTION_SCREEN_OFF 

您必須先註冊爲這兩個意圖的IntentFilter的,而不是通常在您的清單中聲明它們(請參閱此鏈接瞭解更多詳情)。然後,只需在屏幕打開時打開一個標誌(然後後臺服務啓動定時器或記錄時間https://thinkandroid.wordpress.com/2010/01/24/handling-screen-off-and-screen-on-intents/),然後在屏幕關閉時標誌關閉(並且定時器停止或服務記錄當前時間,然後通過用當前時間減去前一時間來計算屏幕開啓的時間)。

要注意屏幕在24小時內開啓的時間,只需保留另一個24小時的標誌,該標誌在時間段結束時重置。

+0

謝謝你快速回答。你知道如何讓屏幕持續一天(整個屏幕打開的時間)嗎? – Joks

+1

我已經編輯了我的答案,以包含您評論的答案 – ucsunil

相關問題