Implicit Broadcast Exceptions

As part of the Android 8.0 (API level 26) Background Execution
Limits, apps that target the
API level 26 or higher
can no longer register broadcast receivers for implicit broadcasts in their
manifest. However, several broadcasts are currently exempted from these
limitations. Apps can continue to register listeners for the following
broadcasts, no matter what API level the apps target.

Note: Even though these implicit broadcasts still work in the
background, you should avoid registering listeners for them.

Apps that have visibility into an account receive this broadcast when the
account is removed. If this is the only account change that the app needs
to act on, it's strongly recommended that the app use this broadcast
instead of the deprecated
LOGIN_ACCOUNTS_CHANGED_ACTION.

Some apps may need to update their stored data when another package is
removed; for those apps, there is no good alternative to registering for this
broadcast.

Note: Other package-related broadcasts (such as ACTION_PACKAGE_REPLACED) are not exempted from
the new restrictions. These broadcasts are common enough that there is a
potential performance impact to exempting them.

These broadcasts are sent as a result of the user's physical interactions with
the device (installing or removing storage volumes) or as part of boot
initialization (as available volumes get mounted), so they are not a common
occurrence and are generally under the user’s control.