【发布时间】:2018-10-09 19:49:04
【问题描述】:
我的问题是针对 API LEVEL 24 - Android 7.0 Nougat。 我正在尝试找到最合适且面向未来的方式来启动粘性前台服务。 总结: - 按下按钮后需要从活动中启动服务 - 将创建一个(粘性 - 这将由通知标志处理)通知
在 API 级别 26 中,我们可以调用 startForegroundService(service, notification) 并且服务会自动关联到通知。
但是在 API 级别 24 中,服务以 startService(service) 启动,并通过调用 NotificationManagerCompat 的 notify 方法显示通知。
怎么让操作系统知道通知是和服务相关的,所以服务被认为是前台服务,操作系统永远不会自己杀死。
注意:我想要这个实现的原因是为了面向未来。此服务需要位置更新,从 API 级别 26 开始,只有前台服务(带有粘性通知)能够接收实时更新 (https://developer.android.com/about/versions/oreo/background-location-limits)。
【问题讨论】:
标签: android service android-api-levels