我正在 Android Nougat 上构建一个应用程序,它将持续工作(在活动模式和打盹模式下(当手机处于睡眠状态时))。问题是在大约 6 小时不活动后,Android 会停止应用程序。
有一个带有活动和服务的 UI。该服务使用蓝牙、网络和记录到本地数据库。大约每分钟一次,蓝牙工作,结果记录在本地数据库中。之后,数据库中的数据通过网络发送。该服务运行 6 小时,然后停止工作。显示通知,但服务不工作。manager.GetRunningServices 方法还表示服务已启动但没有服务迹象。
我尽你所能:
- 该服务使用 StartForeground 方法
- 使用了wakeLock - 无济于事
- 使用白名单 - 延长了几个小时,但最终,服务停止工作
- 使用了警报管理器。它一直在工作,但 OnReceive 中的代码表明服务正在运行,但实际上并非如此。
- 我在一个单独的进程中启动了该服务,以便他使用尽可能少的内存,但这也无济于事。
也许有人对此有想法?
谢谢你。