相关疑难解决方法(0)

是否可以从adb shell/am命令行模拟GCM接收?我收到了一个错误

我正在尝试使用adb和命令行模拟设备是否正在接收GCM推送消息.我试过这个命令来播放GCM意图:

adb shell am broadcast -c com.myapp -a com.google.android.c2dm.intent.RECEIVE -e data "SomeData"
Run Code Online (Sandbox Code Playgroud)

这会触发"权限拒绝"日志行:

09-19 12:23:34.820      725-787/? W/BroadcastQueue? Permission Denial: broadcasting Intent { act=com.google.android.c2dm.intent.RECEIVE cat=[com.myapp] flg=0x10 (has extras) } from null (pid=21244, uid=2000) requires com.google.android.c2dm.permission.SEND due to receiver com.myapp/com.google.android.gcm.GCMBroadcastReceiver
Run Code Online (Sandbox Code Playgroud)

我的清单的相关部分:

<uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />
<application>
<receiver
    android:name="com.google.android.gcm.GCMBroadcastReceiver"
    android:permission="com.google.android.c2dm.permission.SEND" >
    <intent-filter>
        <action android:name="com.google.android.c2dm.intent.RECEIVE" />
        <action android:name="com.google.android.c2dm.intent.REGISTRATION" />
        <category android:name="com.myapp" />
    </intent-filter>
</receiver>
</application>
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

编辑/说明:推送/ GCM接收在生产中工作.我正在寻找一种更简单的方法来测试变化.

android

24
推荐指数
3
解决办法
1万
查看次数

标签 统计

android ×1