防止安卓杀死暂停的音频服务



从Android API 26开始,Android系统要求"执行用户注意到的某些操作"的服务将自己注册为前台服务。并且"前台服务必须显示通知"。

我有一个播放音频文件的服务。暂停播放后,用户应该能够将通知滑动开(与 Google Play 音乐应用一样(。但是,如果我打电话给stopForeground()那么我的服务会在几分钟内被系统杀死。

如何允许在播放暂停时滑动通知?

但是如果我调用 stopForeground((,那么我的服务会在几分钟内被系统杀死

在安卓 8.0+ 上,它将在一分钟后停止。

如何允许在播放暂停时滑动通知?

步骤#0:将您真正需要的任何数据(例如,跟踪和播放位置(保存到磁盘

步骤#1:呼叫stopForeground()

步骤#2:引发一个新通知,一个没有设置"正在进行"标志的通知(即,setOngoing(false),这是默认值(,以反映您的暂停状态

步骤#3:理想情况下,调用stopSelf(),以将服务从内存中取出并将进程重要性降低到正常水平,而不是等待Android停止服务的那一刻

最新更新