2015-05-26 42 views
0

我已经创建了一个GCM通知的应用程序,并将其移至实际运行良好的相当一段时间,2,3个月后突然停止接收通知。去掉了代码,但无法理解出了什么问题,我应该在哪里修复。 这里是我的manifest.xml GCM通知突然停止工作,根本没有收到通知

<activity android:name="com.ind.MainActivity"/> 
    <activity android:name="com.ind.ChaptersActivity"/> 
    <activity android:name="com.ind.SectionsListActivity"/> 
    <activity android:name="com.ind.SectionDetailActivity"/> 
    <activity android:name="com.ind.RuleDetailsActivity"/> 
    <activity android:name="com.ind.PartsListActivity"/> 
    <activity android:name="com.ind.PartsDetailActivity"/> 
    <activity android:label="@string/title_activity_web_dev" android:name="com.ind.Circulars"/> 
    <activity android:name="com.ind.CircularsDetailsActivity"/> 
    <activity android:label="@string/title_activity_web_design" android:name="com.ind.Notifications"/> 
    <activity android:label="@string/title_activity_web_maintain" android:name="com.ind.PressNotes"/>   
    <activity android:name="com.ind.UpdateDetailsActivity"/> 
    <activity android:name="com.ind.NotificationDetailsActivity"/> 
    <activity android:name="com.ind.UpdatesActivity"/> 
    <activity android:name="com.ind.Comparision"/> 
    <activity android:name="com.ind.ComparisionActivity"/> 
    <receiver android:name="com.google.android.gcm.GCMBroadcastReceiver" android:permission="com.google.android.c2dm.permission.SEND"> 
     <intent-filter> 
      <action android:name="com.google.android.c2dm.intent.RECEIVE"/> 
      <action android:name="com.google.android.c2dm.intent.REGISTRATION"/> 
      <category android:name="com.ind"/> 
     </intent-filter> 
    </receiver> 
    <service android:name=".GCMIntentService"/> 
    <meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version"/> 
</application> 

请升我知道有什么不对。

从数据库中我可以看到设备正确注册,并且所有设备都从日志中看到相同的东西。

+0

您的应用服务器响应中是否有任何错误日志? – Koh

回答

0

您应该确保正确proccesses这些东西:

  1. NotRegistered是GCM服务器错误代码。得到这个代码,你应该立即从数据库中删除REGID
  2. cannonical_ids是,你应该更换的RegID与新
  3. 信号您必须申请新的从GCM的RegID更新您的客户端应用程序

此外,如果您的数据库中包含所有regIds,则可以尝试向它们发送测试推送,并检查GCM的响应情况。您可以使用我的dev push server用于这些目的。