await AndroidAlarmManager.oneShot(Duration(minutes: 5), MY_ID, syncFn, exact: true, allowWhileIdle: true);
static void syncFn() async {
try{
// send confirmation that app is running to my server
await BackgrdoundService().sync();
} catch (err) {
print(err);
} finally {
await AndroidAlarmManager.oneShot(Duration(minutes: 5), MY_ID, syncFn, exact: true, allowWhileIdle: true);
}
}
感谢您的阅读和帮助!
首先,您需要检查您的后台服务没有在哪里运行,或者警报管理器没有触发。前添加日志
await BackgrdoundService().sync();
因为Android可能会限制后台服务。有关更多信息,请查看此链接https://developer.android.com/about/versions/oreo/background
其次,最好使用WorkManager而不是AlarmManager,因为Android不推荐使用它。
问题内容: 每当用户断开手机通话时,我都希望显示自定义弹出消息。问题是如何检测应用程序何时未运行。任何线索都将有所帮助。 问题答案: 已经有一段时间了,并且已经有了很多发展。 首先,如何在Flutter中创建服务以使应用程序始终在后台运行有一些答案? 此外,使用Flutter插件和地理围栏(在2018年9月),Flutter / Background流程 基本上将使您指向在后台执行中等/执行Dar
我是初学扑动的。我的flutter应用程序在kotlin上有一个原生的android后台服务,在那里我有一个套接字在运行,每当套接字侦听一些东西时,我就会使用notificationcompat.builder生成一个通知。 但当用户点击通知时,我无法将Flutter应用程序带回前台。 我尝试创建一个pendingintent并将其传递给notificationbuilder setContent
我想创建一个应用程序,它始终在后台运行,并在每15分钟从服务器获取数据。如何在我的APP中实现这个后台服务?
问题内容: 我正在从服务器向我的应用发送fcm通知。 我正在从包含user_id的服务器发送数据。如果应用程序在前台,我将在FirebaseMessageService类中获取此userId。但是当应用程序在后台运行时却无法获取。由于FirebaseMessagingService类仅在应用程序处于前台时才执行。 那么当应用程序在后台运行时,如何获取此ID? 编辑: 我正在使用仍然处于onMess
我正在从服务器向我的应用程序发送fcm通知。 我正在从包含user\u id的服务器发送数据。若应用程序位于前台,我将在FirebaseMessageService类中获取此用户ID。但当应用程序在后台时无法获取。因为FirebaseMessagingService类只有在应用程序位于前台时才能执行。 那么当应用程序在后台时,如何获取此ID呢? 编辑: 当应用程序在后台时,我使用的数据负载仍然是M
背景资料 我有一个。NET Core 3.1控制台应用程序,这是一个长时间运行的进程。基本上,一些逻辑运行在一个无限循环中,每个循环都有一个延迟。 我目前正在使用Visual Studio将此应用程序打包到docker容器中,然后部署到Azure中的Linux应用程序服务。这一切都有效。我能够将docker容器发布到Azure容器注册表,然后将我的Linux应用程序服务指向该容器。容器成功启动,我