android - 跨应用程序在 GCM 中执行相同操作的多个接收器

标签 android push-notification google-cloud-messaging

当我们在 android 中实现 GCM(谷歌云消息传递)时,我们必须在每个应用程序中提供我们的接收器。据我所知,如果您有多个应用程序有自己的接收器映射以执行常见操作“com.google.android.c2dm.intent.RECEIVE”。每个应用程序中的接收器都应该调用但不调用,我想知道 android 如何识别应该调用哪个应用程序的接收器?

 <receiver
        android:name=".GcmBroadcastReceiver"
        android:permission="com.google.android.c2dm.permission.SEND" >
        <intent-filter>
            <!-- Receives the actual messages. -->
            <action android:name="com.google.android.c2dm.intent.RECEIVE" />

            <category android:name="com.google.android.gcm.demo.app" />
        </intent-filter>
    </receiver>

最佳答案

当您在 GCM 广播接收器的 intent 过滤器的 category 中指定您的包名称时,您缩小了 com.google.android.c2dm.intent.RECEIVE 的范围 对 GCM 消息应传递到的特定应用程序的操作。

关于android - 跨应用程序在 GCM 中执行相同操作的多个接收器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22007317/

相关文章:

android - Google Cloud Messaging 是否会向处于待机模式的设备发送消息?

android - 发现任务 ':app:processDebugResources' 配置有问题

java - 在 Android View 中绘制 java.awt.image.BufferedImage

java - 如何仅使用 Java(无 Javascript)创建 MFP 推送通知适配器

PHP GCM 错误信息 MismatchSenderId

android - 从服务器向 Android 应用程序发送命令

java - 运动事件如何与特定 View 关联?

java - AndroidKeyStore key 生成期间的 IllegalArgumentException(无法解析的日期)

ios - 推送通知自定义声音停止工作

java - 如何使用 Java GCM API 在 Android 设备上获取失败推送通知的注册 ID