我正在尝试使用以下adb shell命令在我的设备上接收推送通知:
adb shell am broadcast -c com.xxxx.android -a com.google.android.c2dm.intent.RECEIVE -e data "Data"
Run Code Online (Sandbox Code Playgroud)
但我没有收到任何推送消息或错误.
这是我得到的输出:
Intent { act=com.google.android.c2dm.intent.RECEIVE cat=[com.myapp] (has extras) } Broadcast completed: result=0
Run Code Online (Sandbox Code Playgroud)
Jin*_* Li 12
以下是adb broadcast命令的基本用法:
adb shell am broadcast
-a <INTENT_NAME>
-n <PACKAGE_NAME>/<RECEIVER_NAME>
[--ei <EXTRA_KEY> <EXTRA_INT_VALUE>]
[--es <EXTRA_KEY> <EXTRA_STRING_VALUE>]
[--ez <EXTRA_KEY> <EXTRA_BOOLEAN_VALUE>]
[--el <EXTRA_KEY> <EXTRA_LONG_VALUE>]
[--ef <EXTRA_KEY> <EXTRA_FLOAT_VALUE>]
[--eu <EXTRA_KEY> <EXTRA_URI_VALUE>]
[--ecn <EXTRA_KEY> <EXTRA_COMPONENT_NAME_VALUE>]
[--e*a <EXTRA_KEY> <EXTRA_*_VALUE>[,<EXTRA_*_VALUE...]]
Run Code Online (Sandbox Code Playgroud)
您可以在AndroidManifest.xml中找到RECEIVER_NAME:
<receiver
android:name="foo.bar.SomeBroadcastReceiver"
android:exported="true"
android:permission="com.google.android.c2dm.permission.SEND">
<intent-filter>
<action android:name="com.google.android.c2dm.intent.RECEIVE" />
<category android:name="xyz.abc" />
</intent-filter>
</receiver>
Run Code Online (Sandbox Code Playgroud)
示例命令:
adb shell am broadcast -a com.google.android.c2dm.intent.RECEIVE -n <YOUR_PACKAGE_NAME>/<YOUR_RECEIVER_NAME> --es "<EXTRA_KEY>" "<EXTRA_VALUE>"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
11612 次 |
| 最近记录: |