华为 P20 Lite 关闭奥利奥前台服务

Huawei P20 Lite killing a foreground service in Oreo

我正在实现一个应用程序,它必须在用户执行某些操作时执行一些繁重的传感器(即使有位置)数据收集 activity。

为此,当用户单击开始收集时,我创建了一个前台服务以确保持续收集数据。它在大多数设备上运行良好,但在华为 P20 上,如果我在某个时间关闭屏幕(可能是 5 分钟,可能更短或更长),它会终止应用程序和前台服务。当设备在充电器中时,似乎不会出现这种情况。

我知道如果设备需要内存等,前台服务可能会被终止,但在我的测试中,该设备只是 运行 我的应用程序,因此不需要终止应用程序。

如有任何建议,我们将不胜感激。

嗯,求虎威支持。您可以通过将应用程序(以及 google 播放服务)设置为手动而不是自动管理来手动保留应用程序 运行。 我已经要求一个 Intent,它可以使这对用户来说更合理,但答案是 "the phone os was not designed for this"...