如何从命令行发送权限广播

时间:2016-02-24 13:42:38

标签: android broadcastreceiver adb

我在使用我的权限com.myexample.permission.MY_PERMISSION的应用中有一个广播接收器。

我可以使用

发送广播

sendBroadcast(intent, "com.myexample.permission.MY_PERMISSION")

来自活动。

要将广播作为com.com.myexample.MY_ACTION发送,并且可以使用以下MY_EXTRA键作为命令的额外数据:

$adb shell am broadcast -a com.com.myexample.MY_ACTION
--ez MY_EXTRA true

但是如何使用adb shell命令从命令行向应用程序发送带有权限com.myexample.permission.MY_PERMISSION的广播?

3 个答案:

答案 0 :(得分:1)

如果我的回答here不符合您的要求,请尝试$(".myclass").click(function(){ var isChecked = $(this).is(":checked") ? "checked" : "unchecked"; $(this).attr("name",isChecked); });

  1. 在定义时添加pm grant PACKAGE PERMISSION级别 您应用中的"development",例如com.myexample.permission.MY_PERMISSION
  2. 将此权限授予" shell"在adb shell中:
    android:protectionLevel="signature|development"

答案 1 :(得分:0)

adb进行测试时,请先查看this post暂时删除权限,然后在准备好通过真实广播进行测试时重新添加权限。

如果这是不可接受的,this post可能会有所帮助。

答案 2 :(得分:0)

使用属于subcmd --receiver-permission的arg broadcast

adb shell am broadcast -a com.com.myexample.MY_ACTION --receiver-permission com.myexample.permission.MY_PERMISSION