计划后台任务的最佳实践 Android
Best practice for scehduled background task Android
我正在创建一个通知应用程序,它会在用户设置提醒通知后提醒他们。我目前的实现逻辑是:
- 创建一个服务,当用户打开他们的应用程序时,它会在后台启动 运行ning。
- 在服务的 onCreate() 方法中,我正在执行一个定时器任务,它将在 5000 毫秒间隔后重复并调用一个方法,该方法将检查用户设置的所有提醒并通知用户是否为当前时间设置了任何提醒.
- 我使用广播接收器 运行 Boot_Completed 事件的服务,以防万一用户关闭他们的 phone。
此实施工作良好,我没有遇到任何问题,但我担心这是一个好的做法吗?请记住,服务 运行ning 和每 5 秒检查一次会消耗电池。此外,如果用户打开 Stamina 模式、省电模式或任何此类模式,将 OS 终止我的服务。有什么办法可以让我的 Service 优先不被杀死吗
如果有任何其他更有效的方法来实现此类任务,我想在我的项目中实现它。
期待建议。
非常感谢。
一切正常,但使用 AlarmManager.setRepeating()
作为计时器。即使您的应用被终止,意图也会出现。
最好的方法是使用此处提到的带有警报接收器的唤醒意图服务
我正在创建一个通知应用程序,它会在用户设置提醒通知后提醒他们。我目前的实现逻辑是:
- 创建一个服务,当用户打开他们的应用程序时,它会在后台启动 运行ning。
- 在服务的 onCreate() 方法中,我正在执行一个定时器任务,它将在 5000 毫秒间隔后重复并调用一个方法,该方法将检查用户设置的所有提醒并通知用户是否为当前时间设置了任何提醒.
- 我使用广播接收器 运行 Boot_Completed 事件的服务,以防万一用户关闭他们的 phone。
此实施工作良好,我没有遇到任何问题,但我担心这是一个好的做法吗?请记住,服务 运行ning 和每 5 秒检查一次会消耗电池。此外,如果用户打开 Stamina 模式、省电模式或任何此类模式,将 OS 终止我的服务。有什么办法可以让我的 Service 优先不被杀死吗
如果有任何其他更有效的方法来实现此类任务,我想在我的项目中实现它。
期待建议。
非常感谢。
一切正常,但使用 AlarmManager.setRepeating()
作为计时器。即使您的应用被终止,意图也会出现。
最好的方法是使用此处提到的带有警报接收器的唤醒意图服务