[英]ACTION_SCREEN_OFF background service trigger
我有一個通過AlarmManager觸發的通知,該通知也播放聲音。
顯然,當應用程序在后台運行時,可能會觸發警報,並且我想讓用戶在按下鎖定按鈕時取消聲音-即監聽ACTION_SCREEN_OFF
。
因此,我想知道是否有可能啟動服務並監聽ACTION_SCREEN_OFF
嗎?
我已經看到了偵聽ACTION_SCREEN_OFF,但是只有在應用程序處於前台時,這種具有BroadCastReceiver的解決方案才似乎起作用。 對?
例如,如果您嘗試執行ACTION_SCREEN_OFF,則可以在“活動”中定義廣播接收器,例如,該接收器將啟動警報。
public class SomeListener extends BroadcastReceiver
{
@Override
public void onReceive(Context context, Intent intent)
{
//Turn off sounds
}
}
然后在清單中使用偵聽器的活動中提供類似此類的內容。
<intent-filter>
<action android:name="android.hardware.usb.action.ACTION_SCREEN_OFF" />
</intent-filter>
<meta-data android:name="android.hardware.usb.action.ACTION_SCREEN_OFF"
android:resource="@xml/my_filter" />
額外的my_filter類可以提供其他元數據的地方。 在這種情況下,這是針對設備的串行或UUID的檢查,因此不能在所有USB連接上啟動。 但是您應該能夠執行類似的操作。
無論如何,據我所知,這將在您的應用程序內觸發監聽器。 過去,此功能適用於在USB連接上啟動應用程序。 即使沒有首先打開應用程序。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.