what is the difference between sendStickyBroadcast and sendBroadcast in Android

前端 未结 3 1453
灰色年华
灰色年华 2020-11-29 16:32

What is the difference between sendStickyBroadcast and sendBroadcast in Android?

3条回答
  •  攒了一身酷
    2020-11-29 16:42

    Here is what the Android SDK says about sendStickyBroadcast():

    Perform a sendBroadcast(Intent) that is "sticky," meaning the Intent you are sending stays around after the broadcast is complete, so that others can quickly retrieve that data through the return value of registerReceiver(BroadcastReceiver, IntentFilter). In all other ways, this behaves the same as sendBroadcast(Intent).

    One example of a sticky broadcast sent via the operating system is ACTION_BATTERY_CHANGED. When you call registerReceiver() for that action -- even with a null BroadcastReceiver -- you get the Intent that was last broadcast for that action. Hence, you can use this to find the state of the battery without necessarily registering for all future state changes in the battery.

提交回复
热议问题