gpt4 book ai didi

java - 处理客户的虚假日期更改

转载 作者:行者123 更新时间:2023-11-30 02:50:48 25 4
gpt4 key购买 nike

在我的 android 应用程序中(android 并不重要,任何客户端应用程序都是类似的)我定期运行服务。当经过一段时间(例如 7 天)并且用户没有设定目标时,我会发送通知。但是,如果用户将手机的时间更改为 future 的日期(这会造成误报),我会发送通知。但这是错误的。

long differenceMinutes = 
Math.abs( (System.currentTimeMillis() / 1000L) - lastGoalTime) / 60;

好路:
- 用户在 2014 年 6 月 15 日设定了一个目标,我将这个日期保存到设备中。
- 我的服务会检查新目标。
- 2014 年 6 月 22 日,如果没有完成新目标,我会发送通知。

错误路径:
- 用户在 2014 年 6 月 15 日设定了一个目标,我将这个日期保存到设备中。
- 2014 年 6 月 16 日,用户将本地时间更改为 2014 年 6 月 22 日。
- 我的服务会检查新目标。
- 没有完成新的目标,虽然只过去了1天,申请发送通知。
- 我不希望应用程序在完成 7 天后发送通知。

我该如何度过这种情况?
我不喜欢连接时间服务器并获取当前时间。
是否有解决此类问题的方法?
如果我不了解这些术语,我很抱歉。

最佳答案

检测 DATE_CHANGED 事件并更新服务器可能是一种解决方法,甚至是解决方案?

扩展一个broadcast receiver,在intent filter中添加如下action,当然也可以通过xml来实现。

intentFilter.addAction("android.intent.action.DATE_CHANGED");

关于java - 处理客户的虚假日期更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24224696/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com