提问人:An Tran 提问时间:7/18/2022 更新时间:7/18/2022 访问量:387
如何根据设备时间设置 flutter 应用时间线?
How do I set flutter app timeline according to device time?
问:
例如,我想在设备上的当前时间 2 小时后执行某些函数(我使用 Timer() 执行此操作)。但是我希望如果我将设备上的时间更改为超过 2 小时,这些功能将立即执行,而不是等待 2 小时。 请告诉我解决方案。 谢谢!
答:
0赞
Kaushik Chandru
7/18/2022
#1
使用共享首选项包
https://pub.dev/packages/shared_preferences
当您希望启动计时器时,请获取日期时间并将其保存在共享首选项中
SharedPreferences _prefs = await SharedPreferences.getInstance();
_prefs.setString('startTime', DateTime.now().toString());
现在检查差异
DateTime startTime = DateTime.parse(_prefs.getString('startTime'));
if(startTime.add(Duration(hours:2)).isBefore(DateTime.now())
{
print("2 hours are over");
}
如果您希望每秒检查一次,请将检查器添加到持续时间为 1 秒的定期计时器中
评论