GCM一次收到太多消息

时间:2015-11-23 10:51:12

标签: android google-cloud-messaging

我对Android进程行为和GCM侦听器服务有一个问题。

正如我已经描述的那样here,我的GCM通知出现问题,这些问题出现在某些测试设备上:有时服务工作并在2-3小时内收到消息。

这个问题在一定程度上得到了解决,我在我的MainActivity中添加了“startService()' -method。”

this.startService(new Intent(context, MyGcmListener.class));

现在我的服务会话持续更长时间。但是自从这个新的应用程序版本发布以来又出现了另一个问

这些信息并非一个接一个地实现并及时实现。应用程序进程处于睡眠状态,每小时只能唤醒一次。这就是为什么我有时会同时收到多达15条消息,尽管它们并未同时发送。

如何让这个过程不能入睡并始终保持清醒?

这是关于GCM的明显部分:

<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />
<!-- ... other permissions -->

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

<uses-permission android:name="my.app.path.permission.C2D_MESSAGE" />

<application
...>
 <!-- ... activites... -->

<receiver
    android:name="com.google.android.gms.gcm.GcmReceiver"
    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="my.app.path" />
    </intent-filter>
</receiver>      

<service
    android:name=".MyGcmListener"
    android:exported="false"
    android:enabled="true" >
    <intent-filter>
        <action android:name="com.google.android.c2dm.intent.RECEIVE" />
    </intent-filter>
</service>

</application>

</manifest>

0 个答案:

没有答案