在每个月的第一天安排一个服务器随叫随到
Make a server on call on every first of the month
我正在构建游戏,现在我必须将每月第一天的用户分数发送到服务器。
我有多个选项,比如
- 计时器
- ScheduledThreadPoolExecutor
- 服务
- 带有 AlarmManager 的 BroadcastReciever。
但不确定使用哪一个。
原因如下:
我不认为 Alarm 或 Timer 是最好的,因为 它没有意义每个月后都有一个警报,因为用户可以在任何日期安装该应用程序。
除此之外,我什至无法检查用户设备的日期,因为 如果用户在设备上设置的时间错误怎么办?
如果 用户在月初没有可用的互联网连接,或者如果他没有在第一天启动应用程序怎么办。
我知道我们可以使用服务来解决这个问题,但同样总是运行后台服务是否可行,每月只需要一次?
我检查了其他 SO post 也像这样 Scheduling recurring task in Android
但这与我的情况不同,因为我只需要每月拨打一次电话。
谢谢
使用
AlarmManager is your best bet.
您的问题:-
在安排闹钟时检查当前日期并相应地安排闹钟 EX:- 如果今天是 14 天后的第 17 个闹钟。
关于获取当前日期,将当前日期放在服务器上并从那里获取
在我看来,您应该编写一个服务并在您的服务中执行计时器,该计时器将每 24 小时执行一次,如果您不想从用户设备获取日期和时间,则可以使用 google API 或任何其他 API 用于获取时间并决定应用是否需要更新分数。
我正在构建游戏,现在我必须将每月第一天的用户分数发送到服务器。
我有多个选项,比如
- 计时器
- ScheduledThreadPoolExecutor
- 服务
- 带有 AlarmManager 的 BroadcastReciever。
但不确定使用哪一个。 原因如下:
我不认为 Alarm 或 Timer 是最好的,因为 它没有意义每个月后都有一个警报,因为用户可以在任何日期安装该应用程序。
除此之外,我什至无法检查用户设备的日期,因为 如果用户在设备上设置的时间错误怎么办?
如果 用户在月初没有可用的互联网连接,或者如果他没有在第一天启动应用程序怎么办。
我知道我们可以使用服务来解决这个问题,但同样总是运行后台服务是否可行,每月只需要一次?
我检查了其他 SO post 也像这样 Scheduling recurring task in Android
但这与我的情况不同,因为我只需要每月拨打一次电话。 谢谢
使用
AlarmManager is your best bet.
您的问题:-
在安排闹钟时检查当前日期并相应地安排闹钟 EX:- 如果今天是 14 天后的第 17 个闹钟。
关于获取当前日期,将当前日期放在服务器上并从那里获取
在我看来,您应该编写一个服务并在您的服务中执行计时器,该计时器将每 24 小时执行一次,如果您不想从用户设备获取日期和时间,则可以使用 google API 或任何其他 API 用于获取时间并决定应用是否需要更新分数。