隱式廣播例外狀況

在 Android 8.0 (API 級別 26) 背景執行限制中,如果應用程式指定 API 級別 26 或以上版本,就無法在資訊清單中註冊廣播接收器,以便進行隱含廣播,除非廣播明確傳送給這些接收器。不過,數個廣播訊息不受這些限制約束。無論應用程式指定的 API 級別為何,應用程式都可以繼續註冊下列廣播的事件監聽器。

ACTION_LOCKED_BOOT_COMPLETEDACTION_BOOT_COMPLETED
這類廣播訊息只會在首次啟動時傳送一次,而且許多應用程式都需要接收這類廣播訊息,例如安排工作和鬧鐘,因此不受此限。
ACTION_USER_INITIALIZEandroid.intent.action.USER_ADDEDandroid.intent.action.USER_REMOVED
特殊權限權限可以保護這些廣播訊息,因此大多數一般應用程式仍然無法接收這類廣播訊息。
android.intent.action.TIME_SETACTION_TIMEZONE_CHANGEDACTION_NEXT_ALARM_CLOCK_CHANGED
時鐘應用程式可能需要接收這些廣播訊息,才能在時間、時區或鬧鐘變更時更新鬧鐘。
ACTION_LOCALE_CHANGED
只有語言代碼變更時才會傳送,而這種情況不常傳送。語言代碼變更時,應用程式可能需要更新資料。
ACTION_USB_ACCESSORY_ATTACHEDACTION_USB_ACCESSORY_DETACHEDACTION_USB_DEVICE_ATTACHEDACTION_USB_DEVICE_DETACHED
如果應用程式需要瞭解這些 USB 相關事件,沒有適合為廣播註冊的好方法。
BluetoothHeadset.ACTION_CONNECTION_STATE_CHANGEDBluetoothA2dp.ACTION_CONNECTION_STATE_CHANGEDACTION_ACL_CONNECTEDACTION_ACL_DISCONNECTED
如果應用程式接收這些藍牙事件的廣播,使用者體驗就不太可能受到影響。
ACTION_CARRIER_CONFIG_CHANGEDTelephonyIntents.ACTION_*_SUBSCRIPTION_CHANGEDTelephonyIntents.SECRET_CODE_ACTIONACTION_PHONE_STATE_CHANGEDACTION_PHONE_ACCOUNT_REGISTEREDACTION_PHONE_ACCOUNT_UNREGISTERED
原始設備製造商 (OEM) 電話應用程式可能需要接收這類廣播訊息。
LOGIN_ACCOUNTS_CHANGED_ACTION
部分應用程式需要瞭解登入帳戶的變更,才能為新帳戶和已變更的帳戶設定預定作業。
ACTION_ACCOUNT_REMOVED
移除帳戶時,可掌握帳戶瀏覽權限的應用程式會收到這則廣播訊息。如果這是應用程式必須處理的帳戶唯一變更,建議應用程式使用這個廣播,而非已淘汰的 LOGIN_ACCOUNTS_CHANGED_ACTION
ACTION_PACKAGE_DATA_CLEARED
只有在使用者從「設定」中明確清除個人資料時才會傳送,因此廣播接收器不太可能對使用者體驗造成重大影響。
ACTION_PACKAGE_FULLY_REMOVED

移除其他套件後,部分應用程式需要更新已儲存的資料。對於這類應用程式來說,註冊此廣播訊息沒有良好的替代方案。

注意:其他套件相關廣播訊息 (例如 ACTION_PACKAGE_REPLACED) 不適用背景執行限制。這些廣播訊息的情況相當常見,因此可能會對效能產生影響,而忽略這些廣播訊息。

ACTION_NEW_OUTGOING_CALL

用於回應使用者撥打電話的應用程式,必須接收廣播訊息。

ACTION_DEVICE_OWNER_CHANGED

這個廣播訊息的傳送頻率不高。有些應用程式需要接收此訊號,以便他們知道裝置的安全性狀態已變更。

ACTION_EVENT_REMINDER

日曆供應器傳送,用於將活動提醒發布至日曆應用程式。由於日曆供應器不知道日曆應用程式為何,因此此播送必須設為隱含。

ACTION_MEDIA_MOUNTEDACTION_MEDIA_CHECKINGACTION_MEDIA_UNMOUNTEDACTION_MEDIA_EJECTACTION_MEDIA_UNMOUNTABLEACTION_MEDIA_REMOVEDACTION_MEDIA_BAD_REMOVAL

這些廣播訊息是因使用者與裝置的實際互動 (例如安裝或移除儲存空間磁碟區),或在啟動初始化作業時傳送,當可用磁碟區掛接時。這類項目通常不是常見,且通常是由使用者控管。

SMS_RECEIVED_ACTIONWAP_PUSH_RECEIVED_ACTION

簡訊接收者的應用程式需要進行這類廣播訊息。