我漫步,如果Android只有「保證」,以保持服務活着,如果它作爲前臺服務運行。但是如果我在同一個進程中將兩個服務彼此相鄰地運行,那麼如果在前臺運行一個服務作爲普通服務。第二項服務是否得到相同的保證?旁邊的正常服務的前臺服務
main process:
ForegroundService - Service with foreground flag
MyService - Normal Service
low memory event ->
Scenario 1:
keep ForegroundService and keep MyService
Scenario 2:
keep ForegroundService and kill MyService
注: 我沒有在Android 7和5的一些調查,在這兩種情況下,如果內存不足,並開始殺死其他內存消費者單個運行前景的服務將保持活着的過程中的所有服務。但是,如果Android運行時間很短,它會殺死整個進程,而不僅僅是刪除單個進程。
這不是我的問題的答案。 Android同時運行兩個服務(主進程),但它仍然可以強制停止其他非前臺服務之一。 – joecks
因此,其他解決方案是在某些週期性時間重新啓動服務或使用警告,請不要使用任何清理程序或防病毒應用程序 –