【发布时间】:2018-12-07 06:27:01
【问题描述】:
我有一个需要始终在后台运行并监听服务器更改的应用程序。当我在 Oreo 下定位 API 时,我可以在后台运行服务。但现在我的目标是 API 版本 28。但 Oreo 更改不允许在后台服务中运行。
解决方案:我需要将其设为前台服务(但我不想设为前台服务)。
我想至少在后台运行我的服务 30 分钟。我使用过 JobService 和 JobIntentService。但是奥利奥会在一段时间后终止这些服务。
对此有什么可能的解决方案?
【问题讨论】:
-
"I need to make it foreground service ( but I don't want to make a foreground service )."- 这真的没有意义 - 前台服务有什么问题?那个小通知图标? -
如果应用程序崩溃,请分享您的 logcat。向我们展示一些我们可以更好理解的代码。
-
@pskink 前台服务没有错。实际上,这是我们不想显示前台服务通知的要求。
-
有一个解决方案,我们可以在Oreo以下设置min sdk版本。这样服务总是可以在后台运行。但我们需要让应用程序以最新的 API 版本 28 为目标。
-
我想在后台运行Service,它会录制30分钟的音频而不显示通知。当我必须启动该服务时,我的应用程序处于后台。
标签: android service android-8.0-oreo