0

我正在为android 9构建一个服务,发现在某些情况下它被android系统关闭了

在查看 logcat 时,它似乎被 lowmemorykiller 杀死了

我有两个问题:

  1. 在android清单中我设置了一个intent-filter android:priority="1000",这应该解决问题吗?
  2. 什么是建议的压力测试来模拟低内存条件进行测试?源代码将非常有帮助。
4

1 回答 1

0
  1. 您需要使用android:priority="999"或更少。

SYSTEM_HIGH_PRIORITY 常量值:1000
应用程序永远不应使用具有此或更高优先级的过滤器。

  1. adb shell am send-trim-memory com.example.app MODERATE

[HIDDEN|RUNNING_MODERATE|BACKGROUND|RUNNING_LOW|MODERATE|RUNNING_CRITICAL|COMPLETE]

(请注意,此命令适用于 API >= 21 的设备)

当我需要“不可阻挡”的服务时,我也有很多情况,所以我写了我的库。你可以在这里试试:https ://github.com/iardelian/Revive-S

于 2020-02-24T14:52:10.097 回答