如何在不显示通知点的情况下在 android Oreo 中继续后台服务?我使用通知继续我的后台服务,但我不想显示正在运行的服务的通知。
原文由 faiyaz meghreji 发布,翻译遵循 CC BY-SA 4.0 许可协议
如何在不显示通知点的情况下在 android Oreo 中继续后台服务?我使用通知继续我的后台服务,但我不想显示正在运行的服务的通知。
原文由 faiyaz meghreji 发布,翻译遵循 CC BY-SA 4.0 许可协议
这在 API version (26)
及更高版本中是不可能的。如果您在未向用户显示通知的情况下运行 Android 操作系统,它会自动关闭您的服务。
如果您的目标是 API >= 26
系统将限制您的服务在后台运行,除非您在前台进行活动。一旦您的活动进入后台,当系统发现它在后台运行时服务将终止(请参阅 后台服务限制)。
通过使用 startForegroundService()
方法,您授予该权限以在后台运行服务,即使活动未运行。还必须在创建服务后,服务必须在五秒内调用其 startForeground()
方法。
原文由 Abdur Rahman 发布,翻译遵循 CC BY-SA 4.0 许可协议
15 回答8.4k 阅读
8 回答6.2k 阅读
1 回答4k 阅读✓ 已解决
3 回答6k 阅读
3 回答2.2k 阅读✓ 已解决
2 回答3.1k 阅读
2 回答3.8k 阅读
如果您在 此处 的某处正确阅读了 Android Oreo 8.0 文档,您可能不会在此处发布此问题。
这个解决方案的一个问题是它会一直显示
notification
直到你的Service
在运行 Android Oreo 8.0 的所有设备上运行。我确信即使应用程序处于后台或处于终止状态,此解决方案也能正常工作。
我希望这可能有助于解决您的问题。