哪种 Android 技术更适合这个需求?
Which Android technology is better suitable for this requirements?
条件:
1) 用户可以为每个工作日创建一个时间表。
2) 用户只定义作业的开始时间。
3) 从现在到那时,作业将在条件1和条件2中安排的时间每天执行
4) 作业始终执行(从不排队),即使电池电量不足。
问题:
哪个更好?
- 报警管理器
- 工作计划
- 工作管理器
- 前台服务
- 后台服务
我会说您的要求 (4) 很难满足。随着 Doze 模式的引入以及在更高版本 Android 中添加的各种其他节电措施,您将无法始终完全控制它。
如果您对此比较灵活,最好的选择是:
WorkManager
它是最适合您的要求和任何此类要求的结构。
如果您阅读 documentation,它指出 WorkManager 以最适合特定版本 Android 的方式利用其他技术。
它的 API 可让您完成符合您要求的所有其他任务,并在处理向后兼容性方面做得很好。
如果需要准确的时间,您将需要使用 AlarmManager 并在设备重启或您的应用程序被强制停止时管理重新设置您的闹钟。 None 的其他人目前适合 运行 在准确的时间工作。请参阅 Android 开发者网站的 this guide,了解有关这些解决方案之间差异的更多指导。
条件:
1) 用户可以为每个工作日创建一个时间表。
2) 用户只定义作业的开始时间。
3) 从现在到那时,作业将在条件1和条件2中安排的时间每天执行
4) 作业始终执行(从不排队),即使电池电量不足。
问题: 哪个更好?
- 报警管理器
- 工作计划
- 工作管理器
- 前台服务
- 后台服务
我会说您的要求 (4) 很难满足。随着 Doze 模式的引入以及在更高版本 Android 中添加的各种其他节电措施,您将无法始终完全控制它。
如果您对此比较灵活,最好的选择是:
WorkManager
它是最适合您的要求和任何此类要求的结构。 如果您阅读 documentation,它指出 WorkManager 以最适合特定版本 Android 的方式利用其他技术。
它的 API 可让您完成符合您要求的所有其他任务,并在处理向后兼容性方面做得很好。
如果需要准确的时间,您将需要使用 AlarmManager 并在设备重启或您的应用程序被强制停止时管理重新设置您的闹钟。 None 的其他人目前适合 运行 在准确的时间工作。请参阅 Android 开发者网站的 this guide,了解有关这些解决方案之间差异的更多指导。