我刚接触Flutter不久,正在尝试使用Android *Alarm Manager Plus软件包 * 实现一个简单的报警应用程序。下面是文档中的示例代码,看起来很相似。我的应用程序成功地安排并触发了多个报警,但我找不到取消触发报警的好方法。
static void printHello() {
final DateTime now = DateTime.now();
final int isolateId = Isolate.current.hashCode;
print("[$now] Hello, world! isolate=${isolateId} function='$printHello'");
}
main() async {
// Be sure to add this line if initialize() call happens before runApp()
WidgetsFlutterBinding.ensureInitialized();
await AndroidAlarmManager.initialize();
runApp(...);
final int helloAlarmID = 0;
await AndroidAlarmManager.periodic(const Duration(minutes: 1), helloAlarmID, printHello);
}
我想写一个类似下面的函数:
cancel = await AndroidAlarmManager.cancel(id);
但如何获取ID呢?我将所有已安排的报警及其ID保存到一个列表中。如果按时间对列表进行排序,我是否应该简单地假设列表中的下一个报警是活动报警,或者有更好的方法?
1条答案
按热度按时间erhoui1w1#
现在这次后台没有报警的解决方案,我也找到了但是找不到,一个flutter有很多限制,我用了很多flutter插件但是没有实现报警。
如果有人能找到解决办法,答案是这样的。
我也试试这个套餐报警:^0.0.6但未达到。