Android 未在设备上接收GCM

Android 未在设备上接收GCM,android,google-cloud-messaging,Android,Google Cloud Messaging,我正在尝试设置一个谷歌应用引擎服务器端点,向android设备发送谷歌云消息。到目前为止,该设备使用GoogleCloudMessaging.register()进行注册,并将生成的regID发送到服务器。然后,服务器可以向其保存的regid发送消息。通过日志消息,我可以看到regid都正确到达,服务器也正确发送消息。不过,这些设备没有收到任何消息 这是清单中的接收人: <receiver android:name="---.app.MessageReceiver"

我正在尝试设置一个谷歌应用引擎服务器端点,向android设备发送谷歌云消息。到目前为止,该设备使用GoogleCloudMessaging.register()进行注册,并将生成的regID发送到服务器。然后,服务器可以向其保存的regid发送消息。通过日志消息,我可以看到regid都正确到达,服务器也正确发送消息。不过,这些设备没有收到任何消息

这是清单中的接收人:

<receiver
        android:name="---.app.MessageReceiver"
        android:exported="true"
        android:permission="com.google.android.c2dm.permission.SEND" >
        <intent-filter>
            <action android:name="com.google.android.c2dm.permission.RECEIVE" />

            <category android:name="---.app" />
        </intent-filter>
    </receiver>
}

服务从未启动,此处的日志消息从未显示

有什么我遗漏的吗

编辑-以下是权限:

<uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />
<uses-permission android:name="---.app.permission.C2D_MESSAGE" />

<permission
    android:name="---.app.permission.C2D_MESSAGE"
    android:protectionLevel="signature" />

SO上有一个有效的解决方案

作者编辑了他的文章,所以你应该把它作为一个例子。基本上,如果没有正确的权限设置和使用正确的广播构造函数,android不会对发送到应用程序的消息给予任何关注

请相应地设置您的权限和其他内容,然后重试


后来有一篇很好的评论,远远低于被接受的评论。

真是愚蠢的错误。在intent筛选器中,不是.intent.RECIEVE,而是.permission.RECEIVE。

您添加了com.google.android.c2dm.permission.RECEIVE权限吗?是的,我想所有权限都设置正确了。您能在这里发布吗?第二个问题,你有你的.package.permission.C2D_消息集吗?我在帖子中添加了权限。谢谢你的帮助!我和他一样设置了权限,但运气不好。该示例使用了不推荐使用的GCMRegistar,而不是新的GoogleCloudMessaging。
<uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />
<uses-permission android:name="---.app.permission.C2D_MESSAGE" />

<permission
    android:name="---.app.permission.C2D_MESSAGE"
    android:protectionLevel="signature" />