android - GcmBroadcastReceiver 未在 Android 4.0.3 上触发

标签 android notifications push-notification google-cloud-messaging

我已经在我的应用程序中实现了 GCM,遵循此 official tutorial . 但是我在 Android 4.0.3 下的用户报告我的通知不起作用。我发现 GcmBroadcastReceiver extends BroadcastReceiver 中的 onReceive 没有被触发。 这是我的 list 。

    <!-- GCM -->
    <uses-permission android:name="android.permission.GET_ACCOUNTS" />
    <uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />
    <uses-permission android:name="android.permission.VIBRATE" />

    <permission
        android:name="com.myapp.gcm.permission.C2D_MESSAGE"
        android:protectionLevel="signature" />

    <uses-permission android:name="com.myapp.gcm.permission.C2D_MESSAGE" />

    <application
        ... >

        <!-- GCM -->
        <receiver
            android:name="com.myapp.GcmBroadcastReceiver"
            android:permission="com.google.android.c2dm.permission.SEND" >
            <intent-filter>
                <action android:name="com.google.android.c2dm.intent.RECEIVE" />

                <category android:name="com.myapp" />
            </intent-filter>
        </receiver>

我做错了什么?

最佳答案

你的应用的主包名是com.nyapp.gcm还是com.myapp?

在 list 的许可部分,您使用 com.myapp.gcm,而在接收器的 Intent 过滤器类别中,您使用 com.myapp。

在这两个地方你应该使用同一个包,这是你应用的主包。

关于android - GcmBroadcastReceiver 未在 Android 4.0.3 上触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17824058/

相关文章:

windows-phone-7 - WP7 : Push Notification Subscription Lifetime?

android - Wowza Android 示例应用程序 : Write access denied for stream 9x9x9999

android - 如何使用 Android 通知 API 启用振动和灯光?

安卓编程 : GCMIntentService Stuck at WakeLock

ios - PushNotification 横幅未在 iOS 10.3 中显示

firebase - 我们可以只从 Firebase 通知控制台推送数据消息吗

android - 经许可获取用户当前位置一次

android - 显示自定义对话框android时出现WindowManager BadTokenException

java - 在 Android 中从 SQLite 中检索数据计数

android - 如何在 remoteview 的帮助下创建 Listview?