如何每15天运行一次功能?

时间:2020-08-08 20:02:00

标签: flutter datetime

我知道我可以使用plot.new() par(mar=c(5,7,5,3)) matplot(percs, type="l", main = "Occurence of First Letters of Names in Females, 1931-2010", xlab = "Year", ylab = "", cex.axis=0.8, cex.lab=1.1, las=1, xaxt="n", col="gray") mtext("Percent of \n All Names", side = 2, line = 2, las =1, cex=1.1) axis(1, at=seq(1, 80, 10), labels=seq(1931, 2010, 10)) Future.delayed(),但是由于我每天都在工作,所以我不知道这些方法是否是最有效的实现方式。

此外,我认为关闭应用程序将是一个重要因素,因为它可能会重置TimerFuture.delayed()

因此我使用了DateTime.now(),但是它不起作用,因为每次用户登陆到此页面时,都会给出变量 dateTime dateTimeHolder 再次Timer .-。

这就是我所拥有的:

DateTime.now()

有什么想法吗? 如果需要更多信息,请告诉我!

1 个答案:

答案 0 :(得分:1)

您可以做的就是将dateTimeHolder设置后立即保存到SharedPreferences中。这样,可以在应用重启时保存值。

Here是Flutter Cookbook上的一篇很棒的文章,内容涉及使用键/值存储的持久性。

您只需使用它来读写dateTimeHolder

final TRIGGER_DATE_KEY = "TRIGGER_DATE_KEY";

void storeTriggerDate(DateTime time) async {
  SharedPreferences preferences = await SharedPreferences.getInstance();
  preferences.setString(TRIGGER_DATE_KEY, time.toIso8601String());
}

Future<DateTime> readTriggerDate() async {
  SharedPreferences preferences = await SharedPreferences.getInstance();
  String iso = preferences.getString(TRIGGER_DATE_KEY);
  return DateTime.parse(iso);
}