如何在我的Firebase应用程序中独立控制用户手机上的时间?

p4tfgftt  于 2022-11-17  发布在  其他
关注(0)|答案(2)|浏览(136)

我有一个Flutter应用程序,用户可以预测足球比赛的结果。问题是,如果用户更改了手机上的时间,即使比赛已经结束,他们仍然可以预测。我如何防止这种情况,使其独立于每个用户手机上的时间?谢谢

nc1teljy

nc1teljy1#

解决方案是不从本地设备获取日期,而是从其提供的firebase timestamp获取日期,例如,如果我们说您希望在从现在到明天的同一时间执行此操作,您可以使用以下命令将其保存到数据库:

Timestamp(Timestamp.now().millisecondsSinceEpoch , 24*60*60*1000)

在您的示例中,需要将我们在数据库中设置的Timestamp与以下值进行比较:

FieldValue.serverTimestamp()

此外,您可以使用以下代码从Timestamp获取DateTime:

final firestoreTimestamp = /* the Timestamp object */;
 firestoreTimestamp.toDate();
ars1skjm

ars1skjm2#

最安全和最推荐的方法是使用数据库规则。

相关问题