在Android O中运行后台运行Intentservice
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在Android O中运行后台运行Intentservice相关的知识,希望对你有一定的参考价值。
我从IntentService
开始一个MainActivity
。该服务负责初始化FCM数据对象(节点),该数据对象监听在FCM(云)上完成的任何更改。当有任何数据更改时,将触发推送通知。
现在,由于android O不允许服务在后台运行,因此没有观察到推送通知。如何解决这个问题?
答案
IntentService
不打算长时间运行。为了执行长时间运行的任务,你通常会使用Service
- 从Android O开始,即使是普通服务也受background execution limitations的限制。您可以通过将其定为Foreground Service来保护您的服务免受系统杀害。通常最简单的方法是显示持久性通知。
- 就FCM而言,你可以简单地使用register your service for receiving FCM data messages并安全地期望它被调用。如果您的逻辑(响应FCM数据消息)不是非常耗时,则该服务甚至不必是前台服务。
以上是关于在Android O中运行后台运行Intentservice的主要内容,如果未能解决你的问题,请参考以下文章
在 Android O 设备上后台运行的应用程序的位置收集都有哪些限制?