am命令發送廣播:
am broadcast -a android.intent.action.BOOT_COMPLETED
就發送了一條開機廣播,其他廣播類似,其基本格式爲:
am broadcast -a 你的廣播
同樣,在開發過程中,有時候想知道我們自己定義的廣播是否成功發送,或者是某些情況觸發了系統的什麼廣播,那麼下文告訴各位一個小技巧:
命令行執行:
dumpsys | grep BroadcastRecord
結果如下所示:
BroadcastRecord{114315e u0 com.taobao.accs.intent.action.COMMAND} to user 0
BroadcastRecord{452e20c u0 android.content.jobscheduler.JOB_DELAY_EXPIRED} to user 0
BroadcastRecord{9721755 u0 android.content.jobscheduler.JOB_DEADLINE_EXPIRED} to user 0
BroadcastRecord{96e056a u0 AlarmTaskSchedule.com.antutu.ABenchMark} to user 0
BroadcastRecord{37aca5b u0 com.android.server.action.NETWORK_STATS_POLL} to user 0
BroadcastRecord{25212f8 u-1 com.android.server.action.NETWORK_STATS_UPDATED} to user -1
BroadcastRecord{289d3d1 u0 com.taobao.accs.intent.action.COMMAND} to user 0
BroadcastRecord{411b137 u0 AlarmTaskSchedule.com.antutu.ABenchMark} to user 0
BroadcastRecord{71166a4 u0 com.taobao.accs.intent.action.COMMAND} to user 0
BroadcastRecord{d85d7c2 u0 android.content.jobscheduler.JOB_DELAY_EXPIRED} to user 0
BroadcastRecord{bc629d3 u0 android.content.jobscheduler.JOB_DEADLINE_EXPIRED} to user 0
BroadcastRecord{504910 u0 com.android.providers.media.ACTIVATE_MEDIAPROCESS} to user 0
BroadcastRecord{cddae0e u0 AlarmTaskSchedule.com.antutu.ABenchMark} to user 0
BroadcastRecord{23f902f u0 com.taobao.accs.intent.action.COMMAND} to user 0
BroadcastRecord{8687fc5 u0 com.taobao.accs.intent.action.COMMAND} to user 0
BroadcastRecord{83f004b u0 AlarmTaskSchedule.com.antutu.ABenchMark} to user 0
BroadcastRecord{9ec2a28 u0 android.content.jobscheduler.JOB_DELAY_EXPIRED} to user 0
BroadcastRecord{1565341 u0 android.content.jobscheduler.JOB_DEADLINE_EXPIRED} to user 0
BroadcastRecord{46570e6 u0 com.taobao.accs.intent.action.COMMAND} to user 0
BroadcastRecord{4edc0d4 u0 AlarmTaskSchedule.com.antutu.ABenchMark} to user 0
BroadcastRecord{1f3e27d u0 com.taobao.accs.intent.action.COMMAND} to user 0
從上到下,是按照從新到舊的順序排列的,也就是說第一行是系統最新發出的一個廣播。