我在Android KitKat 4.4.2上使用应用程序小部件遇到了问题,操作系统会移除我的后台运行服务,即使它处于粘性模式下也不会重新启动。现在我找到了一个技巧,使用onTaskRemoved在低内存情况下重新启动我的服务。但是问题是如何在我的设备上模拟低内存条件,而不是在模拟器上?
我认为你可以使用本地C代码来实现。以下是我的做法:
此时,您拥有一个使用内存量等于您分配的缓冲区大小的本地进程。即使您在设备上执行其他任务,我认为此进程也不会被置于睡眠状态,因此其内存使用情况将模拟“低内存”情况。
Double
对象数组。不断向列表中添加对象,直到内存耗尽。 - Ricardo