Android GCM与通知警报

时间:2014-05-22 13:33:55

标签: android android-notifications google-cloud-messaging android-alarms

我正在开发一个用户收到重要通知的应用。我不能真正详细说明,因为它是专有的,但我们只是说通知将提醒你给你的狗胰岛素。非常重要,因为你的狗需要准时胰岛素。

我根据闹钟成功设置了通知:

        Calendar calendar = Calendar.getInstance();
        calendar.setTimeInMillis(System.currentTimeMillis());
        calendar.set(Calendar.HOUR_OF_DAY, 16);
        calendar.set(Calendar.MINUTE,59);

        alarmManager.setRepeating(AlarmManager.RTC, calendar.getTimeInMillis(),
            AlarmManager.INTERVAL_DAY, pendingIntent);

它似乎工作得相当好,但从我读到的内容中,某些情况下可能无法安排警报,例如重启后,或强制停止应用程序。版本19中还存在不准确警报的问题。

因此,如果有人同时使用Alarms和GoogleCloudMessaging进行通知,那么在必须及时可靠地收到通知时,如果您能告诉我哪种方法最佳,那将会有所帮助。

2 个答案:

答案 0 :(得分:2)

让我们一个接一个地排序

<强>警报

  1. +不需要互联网
  2. +我们会收到时间提醒
  3. - 我们必须管理TimeZones
  4. - 管理手机重启
  5. - App Force关闭
  6. + - 可以更多
  7. <强> GCM

    1. - 需要互联网(现在每个人都有一天)
    2. + GCM推送上车时间
    3. +没有TimeZone管理
    4. 电话重启后仍然会收到
    5. + GCM
    6. - App Force Close将停止GCM
    7. - 需要管理GCM功能
    8. 最后,它取决于应用对最终用户的重要程度。

答案 1 :(得分:0)

您必须编写该服务。然后你在AndroidManifest文件中提到,就像服务一样

<service android:name="com.sample.ClassName" >
        </service>