Я использую последнюю стандартную прошивку для своего телефона (SGS3, вариант Vodafone, хотя и с рутом), и я установил программу отслеживания GPS в реальном времени , которая все время остается на панели задач в качестве службы (и я этого хочу).
Когда я загружаю некоторые установленные мной игры, требующие оперативной памяти, иногда эта служба умирает (вместе с другими процессами, которые меня не волнуют), потому что Android пытается автоматически освободить память (у меня нет установленного убийцы задач).
Есть ли способ сделать эту службу более приоритетной, чтобы она не попадала в число других вещей, которые сборщик мусора Android выбрасывает, когда я открываю свои любимые огромные приложения?
Заранее спасибо!
Попробуйте Auto Memory Manager и установите более низкие значения minfree на вторичном сервере, чтобы у него было меньше шансов убить службы. Вы также можете увеличить приоритет службы OOM до 0 (более низкие значения означают меньшую вероятность быть убитым), что также является частью приложения.
Единственное решение, которое я нашел и, кажется, работаю с более чем одной службой, - это убедиться, что я оставляю открытыми в диспетчере задач приложения, которые я не хочу закрывать.
Это не пуленепробиваемый подход, но он работает часами или даже днями (по крайней мере, в моем случае) и намного быстрее, чем ручное изменение приоритета OOM (только для того, чтобы узнать, что OOM через некоторое время возвращается самой системой).
Идеальным решением было бы приложение, которое отслеживает OOM служб, указанных пользователем, и следит за тем, чтобы оно поддерживалось на определенных уровнях, но до сих пор я не нашел ничего, что могло бы это сделать.
Сакстус
форумы
Сакстус