adb shell am broadcast 後面的參數有[-a <ACTION>]
[-d <DATA_URI>]
[-t <MIME_TYPE>]
[-c <CATEGORY> [-c <CATEGORY>] ...]
[-e|--es <EXTRA_KEY> <EXTRA_STRING_VALUE> ...]
[--ez <EXTRA_KEY> <EXTRA_BOOLEAN_VALUE> ...]
[-e|--ei <EXTRA_KEY> <EXTRA_INT_VALUE> ...]
[-n <COMPONENT>]
[-f <FLAGS>] [<URI>] 具体应该怎么样传 比如我要发一个action为android.intent.action.PACKAGE_REMOVED 包名为com.test的广播
action 我知道怎么传 包名要是哪个参数
[-d <DATA_URI>]
[-t <MIME_TYPE>]
[-c <CATEGORY> [-c <CATEGORY>] ...]
[-e|--es <EXTRA_KEY> <EXTRA_STRING_VALUE> ...]
[--ez <EXTRA_KEY> <EXTRA_BOOLEAN_VALUE> ...]
[-e|--ei <EXTRA_KEY> <EXTRA_INT_VALUE> ...]
[-n <COMPONENT>]
[-f <FLAGS>] [<URI>] 具体应该怎么样传 比如我要发一个action为android.intent.action.PACKAGE_REMOVED 包名为com.test的广播
action 我知道怎么传 包名要是哪个参数
最后这个data就是
onReceive(Context context, Intent data)里的data
用
adb shell am broadcast -a task_list_bar
这个指令是可以发出task_list_bar广播
打印信息
01-01 13:16:36.863: V/ActivityManager(226): Broadcast: Intent { act=task_list_bar }
ordered=true
执行了对应的功能
adb shell am broadcast -a android.intent.action.PACKAGE_REMOVED -d package:com.lim.android.automemman -f 0x10000000
以上指令会发出广播
Broadcast: Intent { act=android.intent.action.PACKAGE_REMOVED dat=package:com.lim.android.automemman flg=0x10000000 } ordered=true
而正常的为
Broadcast: Intent { act=android.intent.action.PACKAGE_REMOVED dat=package:com.lim.android.automemman flg=0x10000000 (has extras) } ordered=false
只差蓝色部分不一样,不知道你知道怎么解决吗
adb shell am broadcast -a android.intent.action.PACKAGE_REMOVED -d package:com.lim.android.automemman -f 0x10000000 -ez false