2012-05-04 51 views
13

您可以發佈一個簡單的代碼來處理關機事件。 我需要清單和接收器。在Android中處理手機關機事件

我需要以下內容: 我有一個服務在後臺運行,我想檢測手機關閉,以使其處於靜音模式,以便可怕的操作員音樂無法播放。

重新啓動手機(我已經啓動接收器)後,該服務將啓用手機聲音。

回答

27

你需要聽你的接收器下面的意圖行動:

<action android:name="android.intent.action.ACTION_SHUTDOWN" /> 

,使其與一些HTC(或其他),它提供了快速關機功能的設備兼容,你需要包括以下過在同一個意向篩選器操作:

<action android:name="android.intent.action.QUICKBOOT_POWEROFF" /> 

欲瞭解更多信息,請閱讀this

1

公共靜態最後絃樂ACTION_SHUTDOWN

廣播動作:設備正在關閉。當設備關閉時(完全關閉而不是睡眠)播放。廣播完成後,最終關機將繼續進行,並且所有未保存的數據都將丟失。應用程序通常不需要處理這個問題,因爲前臺活動也會暫停。

這是受保護的意圖,只能由系統發送。

常數值: 「android.intent.action.ACTION_SHUTDOWN

這ACTION_SHUTDOWN可以從設備的不同而不同設備

像HTC的android.intent.action.QUICKBOOT_POWEROFF

5
<receiver android:name=".ShutdownReceiver"> 
    <intent-filter> 
     <action android:name="android.intent.action.ACTION_SHUTDOWN" /> 
     <action android:name="android.intent.action.QUICKBOOT_POWEROFF" /> 
    </intent-filter> 
</receiver> 
+4

Eclipse的告訴我這個當我添加了DEVICE_POWER權限:「權限只被授予系統應用程序「 – gonzobrains