android打开前台服务,前台服务启动限制  |  Android 12 开发者预览版  |  Android Developers...

Android 12中,后台应用无法启动前台服务,除非符合特定条件,如用户交互、地理围栏事件等。推荐使用WorkManager的加急作业作为替代方案,以实现高优先级任务。WorkManager 2.7.0-alpha01支持加急作业,提供向后兼容性,并在Android 12上利用新特性。同时,设置加急处理的CoroutineWorker和ListenableWorker的foreground方法已被弃用,应使用setExpedited()。
摘要由CSDN通过智能技术生成

feedback-icon.svg

我们非常期待收到您对这些限制的反馈。

请填写一份简短的调查问卷,告诉我们您的想法。具体而言,请告诉我们您的应用中的哪些用例受到此变更的影响。

以 Android 12 为目标平台的应用在后台运行时无法再启动前台服务,但一些特殊情况除外。如果应用在后台运行时尝试启动前台服务,并且前台服务不符合任何特殊情况,则系统会抛出 IllegalStateException。

前台服务的推荐替代方案:WorkManager

如果您的应用受到此变更的影响,建议您转向使用 WorkManager。Android 12 Beta 版发布时,WorkManager 将成为启动高优先级后台任务的推荐解决方案。

Work Manager 2.7.0-alpha01 支持加急作业,后者是 Android 12 中的一种新作业。在 Android 11 及更低版本中,此版本的 WorkManager 使用前台服务提供向后兼容性。

如需查看 Work Manager 2.7.0-alpha01 如何使用加急作业的完整示例,请查看 GitHub 上的 WorkManagerSample。

加急作业

Android 12 新推出的加急作业允许应用执行重要任务,同时使系统能够更好地控制对资源的访问权限。

加急作业在前台服务和 JobScheduler 作业之间具有一组特征:

它们不受某些系统电源管理限制(包括省电模式和低电耗模式)的影响。

只要系统的当前工作负载允许,系统

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值