Срок жизни батареи телефона под мобильным прокси 24/7

База Знаний
Илья Русаловский
Илья Русаловский

Главное: батарея прокси-телефона 24/7 умирает от календарного старения при высоком уровне заряда, а не от количества циклов. Ограничь заряд на 80% встроенным переключателем OEM или связкой «умная розетка + ADB-скрипт» , переведи iProxy и OpenVPN в режим «Без ограничений» , отключи режим энергосбережения Android и «Адаптивную батарею» и держи температуру окружающей среды ниже 25°C. Вместе эти меры превращают типичный Android-телефон под прокси из устройства, теряющего 30–40% ёмкости за 12 месяцев, в устройство, сохраняющее 90%+ ёмкости через 12 месяцев. По сути, срок службы железа на ферме продлевается в 2–3 раза.

Почему здоровье батареи становится главным лимитом для прокси-телефона 24/7

Срок жизни батареи прокси-телефона оказывается самой крупной предсказуемой статьёй расходов в любой 24/7 операции на Android. Мобильные прокси крутятся на живых Android-смартфонах, круглосуточно воткнутых в сеть, и телефон здесь работает как расходник. На горизонте года-двух непрерывной работы первой сдаётся именно батарея. Типичная литий-ионная ячейка теряет 25–40 процентов исходной ёмкости за 12–18 месяцев неконтролируемого заряда. Телефон ещё загружается, но греется под нагрузкой, всё чаще роняет прокси-соединение и в какой-то момент раздувается так, что корпус или экран начинают отходить.

Лабораторный базис всё объясняет. Таблица хранения BU-808 от Battery University оценивает: кобальтовая Li-ion ячейка при хранении 25°C сохраняет около 80% ёмкости через год при 100% заряда против 96% при 40% заряда. При 40°C показатель для 100% падает уже до 65% через год.

Для фермы любого размера эта текучка железа и есть самая крупная предсказуемая статья расходов в работе мобильных прокси. Механизмы старения, которые её порождают, изучены и хорошо реагируют на переменные, которые оператор реально контролирует: верхний предел напряжения, на котором сидит ячейка, время, проведённое на этом напряжении, и рабочую температуру.

В статье разбираем электрохимию старения литий-ионных ячеек, что из этого следует для режима 24/7, какие компромиссы есть в настройках Android (многие «энергосберегающие» функции напрямую режут аптайм прокси) и какие железные решения помогают управлять зарядом на ферме из телефонов.

Собираешь мобильную прокси-ферму без специализированного железа?
iProxy.online превращает один Android-телефон в личный 4G/5G мобильный прокси через приложение: ни модемов, ни стоек, ни кода. Настройка занимает меньше пяти минут на устройство, а бесплатный двухдневный триал позволяет замерить поведение связки «телефон + базовая станция» на одной железке до того, как масштабироваться.
Создать мобильный прокси

Как на самом деле работает литий-ионная ячейка

В литий-ионной ячейке три функциональных элемента: графитовый анод, катод из кобальтата лития или родственного соединения и электролит, по которому ионы лития курсируют между ними. Плюс сепаратор, чтобы электроды не замкнули, и токосъёмники с двух сторон: медь со стороны анода, алюминий со стороны катода.

При заряде электрический ток выталкивает ионы лития из решётки катода в графитовый анод. Ионы встраиваются между углеродных слоёв, и этот процесс называется интеркаляцией. При разряде ионы возвращаются обратно, и энергия, которую они отдают, возвращаясь в катод, выходит во внешнюю цепь в виде электрического тока.

Уровень заряда (SoC) показывает, насколько ячейка «полная»: сколько лития сейчас в аноде, а сколько в катоде. На 100% SoC анод почти насыщен литием. На 0% SoC литием насыщен катод.

Напряжение ячейки — это то, что измеряет и показывает на экране телефон как процент заряда. Но напряжение не линейно по SoC. Зависимость больше похожа на растянутую S-образную кривую, и эта нелинейность и есть самый важный факт во всей статье.

Кривая напряжения и «колено» 80%

Если построить график зависимости напряжения от SoC для типичной литий-ионной ячейки, видно три зоны:

  • Ниже ~20% SoC: напряжение резко падает с 3,4 В к отсечке 3,0 В. Ниже 3,0 В ячейка отключается, чтобы не угробить себя.
  • Между ~20% и ~80% SoC: напряжение мягко растёт с 3,6 В до 4,05 В. Это спокойная рабочая часть кривой.
  • Выше ~80% SoC: напряжение круто идёт вверх с 4,05 В к жёсткому потолку 4,20 В (некоторые химии доводят до 4,35 В, но принцип тот же).

Этот переход выше 80% часто называют «коленом» кривой. Это не маркетинговая граница, а точка, где электрохимия из спокойного режима переходит в стрессовый. Выше колена происходят сразу две вещи:

  1. Графитовый анод почти полностью забит литием. Решётка механически вспучивается, как губка, которую сжали почти до предела. Каждый следующий ион при интеркаляции стоит дороже в плане напряжений и риска структурных дефектов.
  2. Напряжение приближается к окну электрохимической стабильности электролита. На 4,20 В электролит уже у самой границы, где его молекулы могут уцелеть без распада. Выше этого побочные реакции разгоняются экспоненциально.

Почему важна кривая, а не процент Когда телефон показывает «100%», ячейка стоит примерно на 4,20 В. Когда показывает «80%», ячейка стоит примерно на 4,05 В. На экране это 20% разницы, в напряжении это 0,15 В, и эти 0,15 В транслируются в разницу темпа старения примерно в 2–3 раза. BU-808 формулирует ту же зависимость иначе: каждое снижение пикового напряжения заряда на 0,10 В ниже 4,20 В на ячейку примерно удваивает количество циклов.

Почему высокий уровень заряда ускоряет старение

Главный механизм старения на высоком SoC, это рост слоя SEI (solid electrolyte interphase, твёрдо-электролитной интерфазы). SEI представляет собой тонкую плёнку, которая формируется на аноде при самом первом заряде ячейки. По сути это полезный слой: он защищает анод от непрерывной реакции с электролитом. Но он нестабилен. При высоком напряжении электролит медленно разлагается на поверхности SEI, утолщая её и забирая каждый раз небольшой запас лития. Этот литий теперь заблокирован, а полезная ёмкость ячейки соответственно падает.

Рост SEI идёт по зависимости, близкой к закону Аррениуса, по напряжению и температуре. Эмпирическое правило: каждое снижение максимального напряжения заряда на 0,1 В примерно удваивает количество циклов; та же чувствительность к напряжению снижает и календарный стресс. Температура работает в ту же сторону: каждые 10°C снижения рабочей температуры дают не косметику, а реальный плюс к ресурсу.

Есть и второй механизм, со стороны катода. При высоком напряжении переходные металлы из катодной решётки (кобальт, марганец, никель) могут растворяться в электролите, мигрировать к аноду и оседать на его поверхности. Это отравляет SEI и ускоряет дальнейшую деградацию. Поэтому ячейки, которые привычно гоняют до 100%, теряют ёмкость быстрее, чем можно было бы прикинуть по одному только счётчику циклов.

Календарное старение, то есть деградация как функция времени, напряжения и температуры независимо от того, циклируется ячейка или нет, оказывается главной переменной для телефона, который живёт в розетке. Таблица хранения BU-808 даёт оператору конкретную цифру: Li-ion ячейка при хранении 100% SoC и 25°C сохраняет около 80% ёмкости через год, тогда как при 40% SoC и тех же условиях остаётся около 96%. Рецензируемое исследование календарного старения Li-ion ячеек приходит к тому же выводу: хранение на 100% SoC бьёт сильно, а ниже 80% влияние уже небольшое.

Для прокси-телефона 24/7 вывод прямой: оставь его на 100%, и календарное старение будет доминировать. Циклов телефон при этом почти не получает, потому что всегда полный, то есть никакого ресурса циклирования в обмен на это старение не зарабатывается.

Почему глубокий разряд тоже вреден

Зеркальная проблема на низком SoC обсуждается реже, но она вполне реальна.

Ниже ~20% SoC катод почти полностью насыщен литием, и его кристаллическая структура становится нестабильной. В кобальтовых катодах при этом может начать отделяться кислород из решётки. Ниже 2,5 В, то есть сильно ниже «0%», который показывает телефон, медный токосъёмник со стороны анода начинает растворяться в электролите. Если ячейка туда уйдёт, то на последующих зарядах начнут расти дендриты, поднимая внутреннее сопротивление и создавая риск короткого замыкания.

Прошивка телефона отрубает ячейку задолго до этих сценариев, обычно на напряжении 3,0 В, что и соответствует отображаемому «0%». Но повторяющиеся циклы у самой отсечки всё равно создают стресс. Ячейка, которая регулярно проседает до 5%, будет стариться быстрее, чем та, у которой нижняя точка где-то на 30%.

Окно между 20% и 80% SoC — самый щадящий в плане структуры и электрохимии режим сразу для обоих электродов. Именно поэтому в исследованиях батарей так часто всплывает «правило 20–80».

Парадокс 79→80% против 99→100%

Частый источник путаницы: если телефон заряжается только до 80%, разве он не гоняет постоянно между 79% и 80%? Чем это лучше, чем гонять между 99% и 100%?

Ответ: разница в процентах не имеет значения. Важно напряжение, на котором этот скачок происходит.

Цикл 79→80% перегоняет ячейку примерно между 4,00 В и 4,05 В. Рост SEI на этом напряжении медленный. Разложение электролита тоже. Графитовая решётка имеет запас. Ячейка переживает это как мягкий микроцикл.

Цикл 99→100% гоняет ячейку между 4,17 В и 4,20 В. Рост SEI здесь в несколько раз быстрее. Окисление электролита экспоненциально интенсивнее. Графитовая решётка под максимальным напряжением. Даже один процент дозаряда на этом уровне наносит непропорциональный урон.

На практике телефон, ограниченный 80%, который большую часть жизни микроциклирует около отметки 4,00 В, может пережить телефон без ограничений в 2–5 раз. Таблица напряжений заряда BU-808 оценивает 300–500 циклов при 4,20 В/ячейку, 600–1000 при 4,06 В/ячейку и 1200–2000 при 3,92 В/ячейку. Это ровно тот диапазон, который начинает работать, когда прокси-телефон перестаёт висеть на 100%.

Что убивает батареи в режиме прокси 24/7, по убыванию

Для телефона, который живёт включённым в розетку как прокси-нода, главные механизмы старения по примерному вкладу выстраиваются так:

  1. Календарное старение при высоком SoC. Сидеть на 100% часами или сутками значит выбирать худший паттерн. Плавающее напряжение 4,20 В гонит непрерывный рост SEI.
  2. Нагрев. Таблица хранения BU-808 даёт около 80% остатка через год при 25°C и 100% заряда, но уже 65% при 40°C и тех же 100% заряда. Телефон, зажатый в стеллаже у стены, летом, без вентиляции живёт в дорогой части кривой.
  3. Высокий C-rate заряда. Быстрая зарядка греет ячейку и нагружает электроды. Для режима 24/7 медленный заряд на 0,3–0,5C оказывается гораздо лучше, чем быстрая зарядка.
  4. Глубокие разряды. Для постоянно подключённых телефонов менее критично, но если устройство проваливается до 5% во время редких сбоев питания, такие эпизоды накапливают повреждения быстрее, чем то же устройство с нижней точкой на 30%.
  5. Количество циклов. Это то, что меряют в спецификациях, но для телефона в розетке параметр почти неважен. Циклов почти нет, всё съедает календарное старение.

Полезная ментальная модель: считай каждую минуту, проведённую ячейкой выше 4,10 В, дорогой; каждую минуту между 3,7 В и 4,05 В считай дешёвой; а каждую минуту ниже 3,4 В снова считай дорогой.

Функции батареи в Android и их влияние на аптайм прокси

Здесь полезны две ментальные модели.

Первая — это система App Standby Buckets, представленная в Android 9 и закручиваемая в каждом следующем релизе. Каждое приложение лежит в одном из пяти бакетов (active, working_set, frequent, rare или restricted) в зависимости от того, как часто с ним взаимодействует пользователь. Приложения в нижних бакетах получают всё меньше джобов, алармов, а в rare и restricted теряют ещё и доступ в сеть. Поверх этого работает «Адаптивная батарея» (тоже с Android 9), которая накладывает на распределение по бакетам ML-модель. Doze mode (Android 6) лежит ещё ниже и откладывает фоновую сеть и CPU, когда телефон простаивает и не двигается.

Вторая модель описывает контракт foreground service. Приложение, удерживающее foreground service с видимым постоянным уведомлением, ОС воспринимает как «пользователь это видит», и большинство ограничений по бакетам приостанавливаются, пока сервис жив. iProxy, как и любое долгоиграющее сетевое приложение, держится на foreground service.

Полезная оговорка из официальной документации Android по Standby Bucket: «эти ограничения применяются только когда устройство работает от батареи. Пока устройство заряжается, система их не накладывает». Этот зазор и объясняет, почему телефон, который каждую минуту воткнут в розетку, обычно нормально крутит прокси, даже если иначе сидел бы в бакете rare или frequent. Этот же зазор объясняет, почему телефон на умной розетке с циклированием заряда, где он то заряжается, то нет, может внезапно ловить ограничения по бакетам в фазах «без зарядки». И именно поэтому два конкретных изменения действуют независимо от того, заряжается ли устройство: бакет restricted из Android 12 и потолок foreground service из Android 15.

Дальше идёт обзор изменений по версиям Android, важных для прокси-приложения 24/7, с фокусом на том, что должен сделать оператор.

Ищешь пошаговые тапы? В подразделах ниже разбираем, что изменилось в каждом релизе и почему. За конкретными кликами для перевода приложения iProxy и тоннельного клиента OpenVPN for Android в режим «Без ограничений» на каждой версии Android, со скриншотами, смотри как отключить оптимизацию батареи Android для iProxy и OpenVPN . За системными переключателями (режим энергосбережения, «Адаптивная батарея», лимит заряда 80%) идёт соседний гайд: как отключить режим энергосбережения и поставить лимит 80% на Android-телефонах под прокси .

Android 9 (API 28): App Standby Buckets, «Адаптивная батарея», FOREGROUND_SERVICE

  • Появляются App Standby Buckets и «Адаптивная батарея». Приложения в нижних бакетах прогрессивно теряют джобы и алармы.
  • Приложения с targetSdk Android 9 обязаны запрашивать разрешение FOREGROUND_SERVICE. Без него старт foreground service выбрасывает SecurityException.
  • Уведомления приостановленных приложений теперь не отменяются полностью, а скрываются до возобновления.

Для прокси-телефона в розетке на Android 9 это всё не смертельно, пока приложение держит foreground service.

Android 10 (API 29): ограничения на запуск активити из фона

  • Приложения из фона больше не могут запускать активити, кроме узкого списка исключений (трамплины уведомлений, accessibility и т. п.).
  • Фоновая геолокация требует отдельного runtime-разрешения (ACCESS_BACKGROUND_LOCATION), отдельного от обычной геолокации.

Прокси-приложение обычно не запускает активити из фона, поэтому эффект скромный. Изменение важно, только если приложение поднимает UI по удалённой команде.

Android 11 (API 30): автосброс разрешений, обязательный WorkManager

  • Runtime-разрешения автоматически сбрасываются у приложений, которыми пользователь не пользовался «несколько месяцев». Это предшественник полной гибернации приложений из Android 12.
  • Firebase JobDispatcher и GcmNetworkManager отключаются для приложений с targetSdk 30+. WorkManager остаётся единственным поддерживаемым планировщиком.
  • Фоновую геолокацию больше нельзя запросить через runtime-диалог. Пользователь должен явно выдать её из настроек.

Для прокси-приложения, которое пользователь установил один раз и больше не открывает, автосброс становится реальным риском. Либо пользователь должен периодически открывать его глазами, либо гибернация должна быть отключена для конкретного приложения (соответствующий переключатель появится в Android 12).

Android 12 (API 31): гибернация приложений, бакет restricted, запрет старта FGS из фона

Это первая версия, где сразу несколько изменений могут уронить прокси 24/7 даже на телефоне, постоянно подключённом к розетке.

  • Гибернация приложений. Развитие автосброса из Android 11. Приложения, которые не использовались несколько месяцев, теряют разрешения и переходят в состояние гибернации, где не могут работать в фоне до повторного открытия. Per-app тумблер: Настройки → Приложения → iProxy → выключить «Приостанавливать активность при неиспользовании» (или соответствующая формулировка OEM).
  • Бакет restricted. Новый пятый бакет ниже rare. Ограничения работают даже на зарядке: максимум один джоб в день в окне на 10 минут, один аларм в день (точный или нет) и жёсткое урезание сети. Триггер: пользователь не взаимодействует с приложением 45 дней либо ОС флагает его за избыточные бродкасты или биндинги.
  • Foreground service нельзя стартовать из фона. Приложения с targetSdk 12+ больше не могут стартовать foreground service, пока само приложение в фоне, кроме узкого списка исключений (алармы, push, accessibility-сервисы, тапы по уведомлению). Foreground service прокси должен подниматься из контекста, который ОС считает foreground (завершение загрузки, точный аларм, действие пользователя).
  • Лимит фантомных процессов. 32 дочерних процесса на приложение. Затрагивает приложения, плодящие много подпроцессов; однопроцессное прокси-приложение в этот лимит редко упирается.

Действия оператора на Android 12+: явно отключить гибернацию для прокси-приложения, проследить, чтобы FGS поднимался из разрешённого контекста, и хотя бы раз в пару месяцев глазами открыть приложение, чтобы оно не свалилось в rare и не словило 45-дневный триггер restricted.

Android 13 (API 33): POST_NOTIFICATIONS как runtime-разрешение, ужесточение бакета restricted

  • POST_NOTIFICATIONS как runtime-разрешение. Приложения с targetSdk 33+ обязаны запросить его до показа обычных уведомлений. Документация Android по разрешению на уведомления делает важную оговорку для foreground service: если пользователь отказал, уведомления foreground service всё равно показываются в Task Manager, но не в шторке. То есть сервис не превращается в обычный фоновый только из-за отказа в разрешении на уведомления, но оператор теряет привычный сигнал в шторке, по которому видно отвалы и рестарты.
  • Триггер бакета restricted снижен с 45 до 8 дней для приложений с targetSdk 13+. Прокси-приложение, которое пользователь не открывал глазами одну рабочую неделю, может улететь в restricted.
  • BOOT_COMPLETED подавляется в установленном пользователем состоянии «restricted». Документация Android поясняет: «если пользователь помещает приложение в restricted-состояние для фонового использования батареи, пока оно нацелено на Android 13, система не доставляет ему ни BOOT_COMPLETED, ни LOCKED_BOOT_COMPLETED, пока приложение не запустится по другой причине». Автостарт после ребута в этом состоянии не гарантирован.
  • UI Task Manager позволяет пользователям видеть и останавливать foreground service из шторки уведомлений независимо от того, выдано ли разрешение на уведомления.

Действия оператора на Android 13+: выдать POST_NOTIFICATIONS при первой установке для видимости и диагностики, перевести прокси-приложение в «Без ограничений» в per-app настройках батареи и смириться с тем, что 8-дневное окно означает: приложение должно быть периодически активно «руками», либо через обычное использование, либо через внешний вотчдог (ADB-скрипт по cron), который открывает приложение по расписанию.

Android 14 (API 34): обязательные типы foreground service, ANR в JobScheduler

  • Обязательное объявление типа foreground service. Каждый долгоиграющий foreground service обязан заявить тип в манифесте: dataSync, mediaPlayback, connectedDevice, specialUse, shortService, health, remoteMessaging и т. п. Приложения без типа убивает ОС, а с неверным типом может зафлажить политика Google Play.
  • ANR в JobScheduler. Если onStartJob или onStopJob слишком долго работают в главном потоке, система кидает ANR («No response to onStartJob»). Раньше такие случаи валились молча.
  • Требуется ACCESS_NETWORK_STATE для вызовов JobScheduler, использующих setRequiredNetworkType() или setRequiredNetwork(). Без него прилетает SecurityException.

Главная вещь для прокси-приложений тут — это объявление типа foreground service. Выбор неправильного типа теперь влияет на то, какие ограничения применяются, включая 6-часовой лимит Android 15, о котором ниже.

Android 15 (API 35): 6-часовой лимит foreground service

  • Для приложений с targetSdkVersion 35 (Android 15) типы foreground service dataSync и новый mediaProcessing попадают под суммарный лимит 6 часов в сутки, согласно документации Android по таймауту foreground service . После 6 часов наработки FGS система вызывает Service.onTimeout(), и если сервис не вызовет stopSelf() в течение секунд, бросает RemoteServiceException («A foreground service of type dataSync did not stop within its timeout»).
  • После исчерпания квоты попытка стартануть ещё один FGS типа dataSync (или mediaProcessing) выбрасывает ForegroundServiceStartNotAllowedException с сообщением «Time limit already exhausted for foreground service type dataSync».
  • 6-часовой бюджет сбрасывается, когда пользователь выводит приложение в foreground. Для прокси-ноды 24/7 это само собой не происходит.
  • Типы foreground service, не попадающие под 6-часовой лимит: specialUse, connectedDevice, mediaPlayback, camera, phoneCall, microphone и location (с учётом текущей политики Google Play по корректному использованию каждого типа).

Для прокси-приложения это самое опасное изменение в плане обвала схемы 24/7. Митигация выглядит так: заявить тип FGS без лимита, подходящий по сути приложения. Роль iProxy как прокидывателя трафика чище ложится в specialUse или connectedDevice, чем в dataSync, который Google задумывал под периодическую синхронизацию пользовательских данных, а не под постоянное проксирование.

Android 16 (API 36): закручивание квот JobScheduler

  • Квоты времени джобов на основе бакетов standby теперь действуют и для бакета active, а не только для нижних, согласно документации Android 16 по изменениям поведения .
  • Квоты top-state и FGS-concurrent. Джобы, стартующие пока приложение видимо и продолжающие работать после ухода в фон, плюс джобы, работающие параллельно с foreground service, теперь подчиняются квотам времени, которые раньше обходили.
  • JobInfo.setImportantWhileForeground окончательно депрекейтнут и игнорируется.
  • scheduleAtFixedRate догоняет только одно пропущенное выполнение после возврата приложения в нормальный жизненный цикл. Раньше выполнялись все пропущенные.
  • Новый STOP_REASON_TIMEOUT_ABANDONED отличает джобы, которые не убрали за собой, от обычных таймаутов.

Для прокси-приложения, которое использует джобы рядом с основным FGS, на практике это означает: джобы больше не могут рассчитывать на безлимитную работу через FGS-concurrent. Долгая работа должна идти либо внутрь самого FGS, либо в user-initiated data transfer job.

Android 17 (API 37): дальнейшее закручивание запуска активити из фона

  • Background Activity Launch (BAL) ужесточён. Приложения, ранее использовавшие MODE_BACKGROUND_ACTIVITY_START_ALLOWED, должны мигрировать на MODE_BACKGROUND_ACTIVITY_START_ALLOW_IF_VISIBLE, иначе запуски активити из фона будут блокироваться.
  • Закручивание фонового аудио. Воспроизведение, аудио-фокус и API громкости теперь требуют либо FGS с while-in-use capability, либо разрешения на точные алармы с аудиопотоками USAGE_ALARM. Это в основном касается медиаплееров.

Для типичного прокси-приложения Android 17 в основном незаметен: убедись, что targetSdkVersion актуален и приложение не запускает активити из фона.

OEM-убийцы (ортогонально версии Android)

Независимо от стокового Android, OEM-оболочки приходят с агрессивным менеджментом батареи: от терпимого (стоковый Pixel) до откровенно враждебного (Huawei). Паттерны и фиксы по вендорам:

OEM / оболочка Агрессивная фича Состояние по умолчанию Что выставить для прокси и VPN
Google Pixel (стоковый Android) Оптимизация батареи по приложению, «Адаптивная батарея», App Standby Buckets Оптимизированно Без ограничений для iProxy + OpenVPN; на бесхозном телефоне фермы есть смысл выключить «Адаптивную батарею»
Xiaomi (MIUI, HyperOS) Менеджер автозапуска, MIUI battery saver, предупреждения «high power consumption» Зажато (автозапуск выключен для не-системных приложений) Автозапуск включить, закрепить в Recents, per-app батарея на Без ограничений
Samsung (One UI) «Усыплять неиспользуемые приложения», список Sleeping apps, список Deep sleeping apps Список спящих сам разрастается со временем Добавить в Never sleeping apps; убедиться, что ни одного приложения нет в Sleeping или Deep sleeping; «Усыплять неиспользуемые» поставить в выключено
Realme / Oppo / OnePlus (ColorOS) Предупреждения «High background power consumption», ведущие к kill-действию, App start manager На стоке агрессивно Auto-launch включить, Background freeze выключить, Abnormal apps optimization выключить
Huawei / Honor (EMUI, HarmonyOS) Protected apps, ручная блокировка запуска, системный чистильщик Защита по умолчанию отключена Добавить в Protected apps; в Launch → Manage manually включить Auto-launch, Secondary launch, Run in background

Пара слов о худших нарушителях. Xiaomi MIUI и HyperOS едут с запрещённым автозапуском для всего, кроме системных приложений: без явного включения автозапуска прокси-приложение просто не стартует после ребута. Samsung One UI держит скрытый список Sleeping apps, который сам разрастается: прокси-приложение, которое оператор не открывал руками, может оказаться там через пару недель, даже если изначально всё было настроено правильно. Huawei EMUI и HarmonyOS исторически требовали отдельно отмечать приложение как Protected через Battery Manager. Без этого системный чистильщик убивает его через минуты после ухода в фон.

Сообщество ведёт проект dontkillmyapp.com , где отслеживаются самые враждебные OEM и митигации по каждому, с оценкой по шкале 1–5. Полезная закладка для любого, кто крутит смешанные фермы. За версионным дополнением к этой таблице (режим энергосбережения, «Адаптивная батарея», лимит заряда 80% на Pixel и Samsung) смотри соседний гайд по системным энергосберегающим настройкам .

Политика сна Wi-Fi

Некоторые телефоны отключают Wi-Fi при выключенном экране ради экономии батареи. Для прокси это смертельно: телефон откатывается на мобильные данные или вовсе роняет прокси-соединение. Запри Wi-Fi на «always on» или «никогда не отключать, когда в розетке». Обычно это Настройки → Wi-Fi → Расширенные → «Не выключать Wi-Fi во время сна».

Что делать, по убыванию важности

  1. Полностью отключи режим энергосбережения. Не давай ему срабатывать автоматически. См. пошаговый разбор по версиям .
  2. Поставь iProxy и любой VPN-тоннель, на котором он держится, в «Без ограничений» (или «Не оптимизировать») в per-app настройках батареи. Путь отличается по версиям Android; пошаговый флоу для каждой версии от 9 до 16 разбирает гайд по переводу приложений в «Без ограничений» .
  3. Выдай POST_NOTIFICATIONS при первой установке (Android 13+).
  4. Отключи гибернацию приложений и «приостанавливать при неиспользовании» для прокси-приложения (Android 12+).
  5. Внеси прокси-приложение в исключения OEM-убийц по таблице выше. Xiaomi: автозапуск включить, закрепить в Recents. Samsung: deep sleep выключить, never sleeping app включить. Realme/Oppo: keep alive включить. Huawei: protected app включить.
  6. Никогда не делай force-stop прокси-приложения из экрана сведений. На Android 15+ stopped-состояние держится до прямого или косвенного действия пользователя и отменяет pending-интенты; если это случилось, запусти приложение заново.
  7. Подтверди, что тип foreground service прокси-приложения не попадает под 6-часовой лимит (Android 15+, приложения с targetSdk 35+).
  8. Зафиксируй Wi-Fi в режиме always-on на зарядке.
  9. Отключи «Адаптивную батарею» или прими, что она может задвинуть прокси-приложение, и периодически аудитируй.
  10. Отключи Data Saver и любые «restrict background data» переключатели.
  11. Открывай прокси-приложение глазами раз в несколько недель, чтобы оно не свалилось в бакеты rare и restricted (особенно актуально для Android 13+ с триггером в 8 дней простоя).

Главное правило Если настройка обещает экономить батарею за счёт ограничения фоновой активности, она ударит по аптайму прокси. Прокси и есть фоновая активность. Отключи всё из этой категории, а ресурс батареи продлевай через сторону зарядки (об этом ниже).

Хочешь управляемую прокси-ферму без копания во внутренностях Android?
Запусти iProxy.online на поддерживаемых Android-телефонах, смотри аптайм, ротацию IP и трафик каждого устройства из единого дашборда или Телеграм-бота. Поведение фермы можно проверить на бесплатном 48-часовом триале без привязки карты.
Создать мобильный прокси

Железное решение: умные розетки и заряд по расписанию

Самый надёжный способ держать телефон 24/7 в зоне 20–80% состоит в том, чтобы управлять не софтом, а подачей питания. У некоторых телефонов есть встроенный лимит заряда (Google Pixel 6a+ под названием «Ограничить до 80%», Samsung One UI 6.1+ как «Защита батареи», Sony как «Battery Care», Xiaomi прячет лимит 80% в HyperOS на отдельных моделях), но у большинства его нет, а где есть, реализация бывает непоследовательной.

Умная розетка, то есть Wi-Fi управляемый сетевой выходной разъём, решает задачу универсально. Розетка включает и выключает зарядник по расписанию или сигналу. Телефон отдаёт SoC по сети (или показывает его в любом дашборде управления фермой), и простой цикл подзаряжает до ~80%, отдыхает и снова поднимается, когда SoC опускается до ~30%.

Практические сборки:

  • Готовые умные розетки. TP-Link Tapo, Sonoff и аналогичные Wi-Fi розетки стоят $5–15 за штуку и интегрируются с большинством платформ умного дома. Грубый подход с жёстким расписанием (4 часа заряжать, 8 часов отдыхать) годится как первое приближение, но реальный SoC не учитывает.
  • Прошивка Tasmota или ESPHome. Если перепрошить умную розетку открытой прошивкой, появляется управление через MQTT или локальный HTTP API, и тогда скрипт сможет опрашивать реальный уровень батареи телефона и переключать розетку.
  • Home Assistant. Если уже крутится Home Assistant, интеграция получается прямолинейной: сенсор батареи (через ADB-скрипт или специальное приложение, которое шлёт broadcast c уровнем) читает SoC, а автоматика дёргает розетку по порогам.
  • Самодельный обрыв USB-линии. Реле на линии питания USB под управлением ESP32 или Raspberry Pi делает то же самое, но ближе к устройству. Самый дешёвый вариант на масштабе, но самый хрупкий.

За универсальным рецептом (умная розетка плюс короткий ADB-скрипт, читающий SoC прямо с телефона и переключающий розетку на порогах 30% и 80%), который работает на любой Android-модели независимо от наличия встроенного лимита, смотри раздел про smart plug + ADB-скрипт в системном гайде по энергосбережению .

Подводный камень: телефон должен оставаться живым Некоторые телефоны уходят в глубокий сон или гибернацию при отключении зарядника, даже если экран включён. Проверь конкретную модель: убедись, что телефон продолжает отдавать прокси-трафик в «выключенной» фазе цикла. Если нет, может потребоваться приложение-вэйклок или укороченные интервалы простоя.

Разумное расписание для большинства телефонов: заряд до 80% (обычно 1–2 часа от 30%), простой, пока SoC не упадёт до 30% (обычно 8–12 часов нормального прокси-трафика), повторить. На выходе получается 2–3 частичных цикла в день в спокойном диапазоне напряжений вместо постоянного float на 4,20 В.

Практический чек-лист долгожителя для прокси-операторов

Настрой каждый телефон один раз, в идеале до того, как он уйдёт в продакшен:

  1. Ограничь заряд на 80% любым доступным способом: встроенным переключателем OEM (Pixel 6a+, Samsung One UI 6.1+) или расписанием умной розетки. Универсальный ADB-рецепт работает на любой модели.
  2. Не давай SoC проседать ниже 20%. Если трафик высаживает телефон быстрее, чем зарядник успевает доливать, это проблема разводки или мощности зарядки, которую стоит решить до того, как ячейка начнёт получать урон.
  3. Отключи режим энергосбережения и «Адаптивную батарею» на уровне ОС. См. гайд по системным настройкам батареи .
  4. Поставь iProxy и OpenVPN в «Без ограничений» в per-app настройках батареи, плюс автозапуск, плюс лок в фоне. Пошаговый разбор по версиям: как отключить оптимизацию батареи Android для iProxy и OpenVPN .
  5. Внеси прокси-приложение в исключения OEM-убийц по таблице выше. Xiaomi: автозапуск, закрепление в Recents. Samsung: deep sleep выключить, never sleeping app включить. Realme/Oppo: keep alive включить. Huawei: protected app включить.
  6. Зафиксируй Wi-Fi в always-on, когда телефон в розетке, без сна.
  7. Выбирай устройства со встроенным лимитом 80%, где это возможно. На странице рекомендованных Android-устройств для iProxy Pixel 8/9 и свежие Galaxy флагнуты в том числе именно из-за этой функции.
  8. Заряжай медленно. Используй адаптер на 1 А или 1,5 А, а не быстрый на 3 А, для постоянной работы. Меньший ток даёт ниже температуру и меньше напряжения в ячейке.
  9. Управляй температурой. Не складывай телефоны плотно. Не клади их сверху на роутеры, модемы и под прямое солнце. Цель состоит в свободном воздухе вокруг устройств, идеально ниже 25°C по температуре окружающей среды. Поток воздуха важен; см. раздел про гигиену фермы в гайде по сборке 4G прокси-сети .
  10. Делай аудит ежеквартально. Обновления ОС могут заново включить отключенное. Проверяй каждые 90 дней. Чек-лист настроек подключения покрывает более широкую гигиену оператора, которая идёт в паре с этим аудитом.
Хочешь проверить математику на одном телефоне до того, как разворачивать ферму?
Запусти один Android на iProxy.online на два дня без карты. Замерь поведение ячейки под реальным прокси-трафиком, проверь, что foreground service живёт, что батарея не висит на 100%, если правильно поставить лимит, и только тогда решай, сколько устройств тебе на самом деле нужно.
Начать бесплатный 48-часовой триал

Когда выводить телефон из эксплуатации

Даже при идеальном уходе батарея остаётся расходником. Практический порог списания для прокси-телефона наступает при снижении ёмкости примерно до 70% от исходной. Ниже этого порога обычно происходит сразу три вещи:

  • Напряжение сильнее проседает под нагрузкой, что выливается в эпизодические отвалы на пиках трафика.
  • Ячейка быстрее греется, ускоряя свою же деградацию.
  • Появляется реальный риск физического вздутия. Вздувшаяся ячейка способна выдавить экран, заднюю крышку, а в редких случаях пробиться и загореться.

Большинство Android-телефонов показывают здоровье батареи в настройках или через ADB (dumpsys battery). Оператор фермы должен снимать показатели здоровья раз в месяц и ротировать телефоны до того, как начнётся вздутие. Телефон, выведенный из работы на 70% ёмкости и проданный или перепрофилированный, остаётся плановой тратой. Телефон, у которого аккумулятор раздуло и выдавило экран на 50%, превращается в плановую трату плюс убитую железку. Правильный выбор железа на старте окупается именно здесь: список рекомендованных устройств iProxy собирает модели с длинной поддержкой ОС, понятными меню батареи и встроенным лимитом 80%, который облегчает всё, о чём шла речь в статье.

Справочные цифры

Рекомендации в этой статье (ограничь на 80%, не давай висеть на 100%, заряжай медленно, управляй температурой, настрой Android так, чтобы он не прерывал прокси) не являются произвольными best practices. Каждая из них завязана на конкретный механизм деградации, который масштабируется экспоненциально по напряжению или температуре: рост SEI, растворение переходных металлов из катода, окисление электролита, аррениусовская зависимость от температуры. Ячейки действительно чувствительны к напряжению и температуре, причём так, как индикатор процентов на экране тебе не показывает.

Две опорные точки для оценки выгоды. Воспринимай их как ориентир для планирования фермы, а не гарантию по каждой ячейке: базовая часть взята из таблиц BU-808 по хранению и напряжениям заряда, а сценарий 24/7 поверх добавляет реальные переменные (нагрев, быстрый зарядник, бесхозный Android).

  • Прокси-телефон 24/7 со стандартными настройками Android, на быстром заряднике, постоянно на 100%, в тёплом стеке: типично теряет 30–40% исходной ёмкости за 12 месяцев.
  • Тот же телефон с лимитом 80%, медленным зарядом через умную розетку, отключёнными OS-савейрами и исключениями для OEM-убийц, в комнате 22°C с потоком воздуха: типично сохраняет 90% ёмкости и больше через 12 месяцев и, скорее всего, всё ещё держится выше порога списания 70% через 36 месяцев.

Стоимость настройки скромная: умная розетка на устройство, разовый аудит настроек на модель телефона плюс per-app и системные переключатели, которые покрывают гайд по режиму «Без ограничений» для iProxy и OpenVPN и системный гайд по режиму энергосбережения и лимиту заряда . Разница капекса между заменой телефона раз в 12 месяцев и заменой раз в 30–36 месяцев линейно масштабируется с размером фермы, а на любой ферме от пяти устройств окупает время на настройку в первом же квартале.

Frequently Asked Questions

Почему батарея телефона под мобильный прокси 24/7 так быстро деградирует по сравнению с обычным телефоном?
Виновато календарное старение при высоком уровне заряда. Телефон в розетке часами висит примерно на 4,20 В, а рост SEI и окисление электролита разгоняются с напряжением экспоненциально. При постоянных 100% и температуре 25°C типичная литий-ионная ячейка теряет около 20% ёмкости за год просто стоя на месте. При тех же условиях, но удержании на 50% SoC, потери падают примерно до 4% в год. Вся разница объясняется только тем, что ячейка постоянно сидит на высоком напряжении.
Какой диапазон заряда оптимален для прокси-телефона 24/7?
Примерно от 20% до 80% уровня заряда. Ниже 20% кристаллическая структура катода становится нестабильной, а выше 80% напряжение пересекает «колено» в районе 4,05 В, и рост SEI ускоряется в 2–3 раза. Микроцикл 79→80% проходит около 4,00 В и для ячейки безболезненный, а микроцикл 99→100% идёт уже около 4,20 В и бьёт жёстко. На экране это одинаковый 1%, в химии получаются совершенно разные вещи.
Зарядка до 100% действительно сильнее изнашивает батарею телефона или это миф?
Это реальный и измеримый эффект. Таблица напряжений заряда BU-808 от Battery University формулирует правило так: каждое снижение напряжения на 0,10 В от 4,20 В на ячейку примерно удваивает количество циклов до износа. Понижение верхнего порога с 4,20 В (100%) до примерно 4,05 В (80%) уже переводит прокси-телефон с режима «замена раз в год» в режим многолетней службы, если параллельно держать под контролем нагрев и Android-«убийц» фоновых приложений.
Умные розетки реально продлевают жизнь батарей на прокси-ферме?
Да, если использовать их для гонки заряда в диапазоне примерно 30–80%, а не оставлять телефон постоянно воткнутым в розетку. Wi-Fi розетка за $5–15 (TP-Link Tapo, Sonoff или любая платформа с поддержкой Home Assistant или MQTT) со скриптом цикла заряда способна удвоить или утроить срок жизни батареи телефона, который иначе бесконечно висел бы на 100%. Универсальный рецепт выглядит так: умная розетка плюс короткий ADB-скрипт, который читает SoC прямо с телефона.
Когда выводить прокси-телефон из эксплуатации, пока батарея не стала проблемой?
Когда ёмкость падает примерно до 70% от исходной. Ниже этого порога напряжение сильнее проседает под нагрузкой (отвалы прокси на пиках трафика), ячейка быстрее греется (ускоряя собственный износ) и появляется реальный риск физического вздутия. Телефон, списанный на 70% ёмкости и проданный или перепрофилированный, остаётся плановой тратой. Телефон, у которого аккумулятор раздуло и выдавило экран на 50%, превращается в плановую трату плюс мёртвую железку.