Android中的时间跟踪器与系统时间无关
我试着用谷歌搜索,但还是找不到最好的答案 我想要的是非常简单的,我是Android新手,我正在开发一款游戏,如果用户每天都玩的话,它会给用户一些日常奖励。 我的代码是:Android中的时间跟踪器与系统时间无关,android,datetime,Android,Datetime,我试着用谷歌搜索,但还是找不到最好的答案 我想要的是非常简单的,我是Android新手,我正在开发一款游戏,如果用户每天都玩的话,它会给用户一些日常奖励。 我的代码是: date = new Date(); dateFormate = new SimpleDateFormat("yyyy/MM/dd"); dateString = dateFormate.format(date); if(!sharedPreferences.getString("date").e
date = new Date();
dateFormate = new SimpleDateFormat("yyyy/MM/dd");
dateString = dateFormate.format(date);
if(!sharedPreferences.getString("date").equals(dateString))
{
sharedPreferences.putString("date", dateString).commit();
... Here I give Bonus to user
}
但问题是,此代码取决于系统日期。用户可以轻松更改日期,并可以获得每日奖励。
我想在他开始玩游戏后追踪24小时的时间。
谁能帮帮我吗。
这将非常感谢。如果你的应用程序可以访问互联网,你可以从自己的服务器获得时间,而不是用户时间
只有当您收到此意图时,您才能收听Intent.ACTION\u TIME\u更改并与服务器时间同步。除非用户手动更改时间,否则您将无法与服务器同步。您可以检查是否更改了日期,而不是比较该日期 日期大于previos日期:分配奖金和纪念日期 日期小于previos日期:用户正在作弊,删除所有奖金,不更新旧日期
这个解决方案当然不是防弹的,但比您以前的解决方案更安全,但问题是相同的。用户可以在每次获得奖励后将日期更新到第二天。这会给我带来更大的回报……这是真的,但一旦你将日期设置回使用日历和闹钟所必需的时间,你就会失去奖金。