【问题标题】:Cancel already set reminder and set new for new time zone取消已设置提醒并为新时区设置新提醒
【发布时间】:2016-06-05 00:47:21
【问题描述】:

我正在开发一个允许用户为特定任务或工作设置提醒的 Android 应用程序。我已经使用警报管理器在 android 中创建了提醒。但我的问题是当用户移动到其他时区时,如何根据新时区更改提醒时间?

第二个问题是如果用户同时为两个任务设置了提醒,哪个会被系统取消?

由于 android 不提供用于提醒的 id。 我已经检查了关于 SO 的link1link2 问题,但在我的第二种情况下它对我无效。

【问题讨论】:

    标签: android timezone alarmmanager android-alarms


    【解决方案1】:

    您不应该这样做,因为您将其设置为绝对的 unix 时间值,对吗? 这意味着相同的绝对时间事件将在每个时区的同一时刻发生

    P.S 要取消警报,您应该使用与设置警报时相同的 Intent。它只是用新的警报覆盖以前的警报。在我的应用程序中,我只对所有事件使用一个警报,并且每次都将其值无效并将其设置为最早的事件时间

    【讨论】:

    • 嘿,你能用一些例子来解释一下吗?我明白你用时间戳设置警报的意义。
    • alarmMgr.setInexactRepeating(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(), AlarmManager.INTERVAL_DAY, alarmIntent);在这里,您使用毫秒的时间,这意味着您使用的是 unix 时间。例如,现在它等于 1456220086 在我所在的时区不分米,它与您的时区相同
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多