我试图谷歌,但我仍然找不到最好的答案。
我想要的只是非常简单,我是Android的新手,我正在开发一款游戏,如果他每天都玩,它会给用户一些日常奖励。 我的代码是:
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小时的时间。 请任何人帮助我。 这将得到很多赞赏。
答案 0 :(得分:0)
如果您的应用可以访问互联网,您可以从自己的服务器获取时间,而不是用户时间。
只有在收到此意图后,您才能收听Intent.ACTION_TIME_CHANGED
并与服务器时间同步。除非用户手动更改时间,否则您不会与服务器同步。
答案 1 :(得分:0)
而不是比较日期已更改,您可以检查是否
这个解决方案当然不是防弹措施,但比你普遍使用的解决方案更安全