gpt4 book ai didi

android - 如何从 ADB 向设备发送 FCM(firebase 云消息传递)推送通知

转载 作者:IT老高 更新时间:2023-10-28 23:35:35 37 4
gpt4 key购买 nike

我们正在使用 Firebase 云消息传递将推送通知发送到 Android 应用程序。

目前要测试推送通知,我们需要将消息发送到 FCM 服务器并等待消息到达设备。大多数情况下,设备需要很长时间才能从 FCM 服务器获取通知。

我可以在下面看到一些链接,这些链接解释了使用 adb 广播命令向设备发送推送通知(此示例解释了使用 GCM 框架发送消息,但我们使用 FCM) Is it possible to simulate a GCM receive from the adb shell / am command line? I'm getting an error

是否有任何类似的方法可以使用 adb 向具有 FCM 的设备发送推送通知?

最佳答案

可以通过 adb 发送 FCM 负载。

虽然 com.google.android.c2dm.permission.SEND 权限确实存在问题,但有一种解决方法。

gradle 将 FirebaseInstanceIdReceiver 添加到 merged list 中。解决方法是将您的自己的副本添加到 list 并覆盖权限使用 tools:replace="android:permission"android:permission="@null"

<receiver
android:name="com.google.firebase.iid.FirebaseInstanceIdReceiver"
android:exported="true"
android:permission="@null"
tools:replace="android:permission">
<intent-filter>
<action android:name="com.google.android.c2dm.intent.RECEIVE" />
<category android:name="your.package.name" />
</intent-filter>
</receiver>

然后发出

adb shell "am 广播 -n your.package.name/com.google.firebase.iid.FirebaseInstanceIdReceiver -c your.package.name -a com.google.android.c2dm.intent.RECEIVE .. .通过终端

(PS - 我强烈建议仅在调试版本中进行,通过 gradle 的 list 占位符或在您的调试/开发版本中使用单独的 AndroidManifest.xml)

关于android - 如何从 ADB 向设备发送 FCM(firebase 云消息传递)推送通知,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40289999/

37 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com