Безопасность

Android. Автозапуск приложения при загрузке: теория и практика

Android. Автозапуск приложения при загрузке: теория и практика

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

Для того чтобы отключить автозапуск ПО на смартфоне, можно воспользоваться сторонним приложением, отключить процессы вручную или полностью удалить программу с устройства. Разберемся, как это сделать.

Будьте предельно осторожны, останавливая работающие процессы или удаляя приложения, так как это может привести к сбоям в работе системы. Отключайте только те программы, в которых уверены на 100%. Такие инструменты, как будильник, календарь, навигатор, почта, напоминания и другие должны работать в фоновом режиме, чтобы выполнять свою функцию.

Способ 1: All-In-One Toolbox

Многофункциональная программа, с помощью которой можно оптимизировать работу системы путем , а также отключения автозапуска приложений.

Этот способ хотя и простой, но не слишком надежный, так как без некоторые приложения всё равно будут запускаться. Вы можете использовать его в сочетании с другими методами, описанными в статье. Если в вашем телефоне есть рут-доступ, управлять автозапуском можно при помощи программ или .

Способ 2: Greenify

Этот инструмент позволяет анализировать работу приложений в фоновом режиме и на время «усыплять» те из них, которыми вы не пользуетесь в данный момент. Основные преимущества: отсутствие необходимости удалять программы, которые могут понадобиться в будущем и доступность для устройств без root-прав.

  1. Скачайте и установите приложение. Сразу после открытия появится небольшое описание, читаем и жмем кнопку «Далее» .
  2. В следующем окне потребуется указать, есть ли на вашем устройстве root-доступ. Если вы сами не предпринимали каких-либо действий для его получения, то, скорее всего, у вас его нет. Укажите соответствующее значение или выберите «Я не уверен» и нажмите «Далее» .
  3. Поставьте галочку, если используете блокировку экрана, и нажмите «Далее» .
  4. Если выбран режим без рута или вы не уверены, есть ли рут-права на вашем устройстве, появится окно, где потребуется включить службу специальных возможностей. Нажимаем «Настройка» .
  5. В появившемся списке нажмите на приложение Гринифай.
  6. Включите возможность автоматизированной гибернации.
  7. Снова зайдите в приложение Greenify и нажмите «Далее» .
  8. Закончите настройку, прочитав предлагаемую информацию. В главном окне нажмите на плюсик в правом нижнем углу экрана.
  9. Откроется окно анализа приложений. Одним нажатием выберите программы, которые хотите усыпить. Нажмите галочку в правом нижнем углу.
  10. В открывшемся окне будут показаны усыплённые приложения и те, которые будут усыплены после отключения. Если вы хотите усыпить сразу все программы, нажмите кнопку «Zzz» в правом нижнем углу.

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

  • Особенности режима Fast boot в HTC-устройствах. Известно, что HTC-устройства не перезагружаются в классическом смысле, а используют так наз. режим Fast boot (это одна из форм гибернации), сохраняя состояние ОС на диск. Поэтому сообщение ACTION_BOOT_COMPLETED не отправляется системой, т.к. в действительности перезагрузка не происходит (). Вместо ACTION_BOOT_COMPLETED система может отправить следующие сообщения:


    В вашем приложении укажите в теге «receiver» кроме ACTION_BOOT_COMPLETED также вышеуказанные сообщения. Кроме этого необходимо прописать разрешение в дополнение к п.1:

  • 2. Практика: ошибки и особенности эксплуатации

    Разберем ошибки, которые совершают новички при настройке приложения и в коде.

    3. Отладка ресивера в эмуляторе и на реальных устройствах.


    Итоги

    Чтобы ваше приложение запускалось при загрузке на всех устройствах, манифест как минимум должен выглядеть так:


    Код ресивера, как правило, будет таким:

    Public class BootCompletedReceiver extends BroadcastReceiver { public BootCompletedReceiver() { } public void onReceive(Context context, Intent intent) { if (intent.getAction().equals(Intent.ACTION_BOOT_COMPLETED)) { Toast toast = Toast.makeText(context.getApplicationContext(), context.getResources().getString(R.string.your_message), Toast.LENGTH_LONG); toast.show(); Log.d("myapp", context.getResources().getString(R.string.your_message); // ваш код здесь } } }
    Надеюсь, эта статья поможет новичкам побороть «коварного врага» под названием «ACTION_BOOT_COMPLETED».

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

    Хотя операционная система Android не содержит встроенных средств для управления автозагрузкой, сторонние разработчики с лихвой заполнили этот пробел, написав большое количество специальных утилит. Мы познакомимся с двумя из них, каждая из которых рассчитана на свой уровень подготовки.

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

    Как убрать приложения из автозагрузки с помощью модуля BootManager

    Итак, для использования BootManager вам понадобится:

    • смартфон или планшет под управлением Android 2.3.3-4.4.4;
    • установленная на смартфоне программа Xposed Installer .

    2. Перейдите в раздел «Загрузка». Найдите на этой странице модуль BootManager. Для этого можно воспользоваться поиском в шапке окна.

    3. Тапните по названию, а затем свайпом перейдите на вкладку «Версии». Здесь вы увидите кнопку «Загрузка», после нажатия которой необходимый нам модуль будет скачан и установлен на устройство.

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

    5. Перезагрузите устройство.

    Вы также можете установить BootManager из каталога приложений Google Play (ссылка чуть ниже), но при этом вам всё равно придётся активировать модуль и перезагрузить устройство (пункты 4-5). Выбирайте тот метод установки, который вам больше нравится.

    После загрузки системы запустите программу BootManager с помощью значка в меню приложений. Утилита просканирует настройки системы и выведет список автостартующих программ. Теперь просто касайтесь тех программ в списке, которые вы считаете лишними (ещё раз обратите внимание на предупреждение в начале статьи!) и соответствующая строка окрасится в красный цвет, что свидетельствует о её отключении.

    При следующей перезагрузке Android вы увидите результаты своих действий и, надеемся, что они вам понравятся.

    Как управлять автозагрузкой приложений с помощью Autostarts

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

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

    Это не единственный способ отображения автостартующих процессов в программе Autostarts . Если вы хотите исследовать правила запуска для каждой конкретной программы, то необходимо переключиться в настройках в режим “Группировать по приложению». В этом режиме вы можете тонко настроить триггеры запуска для любого установленного в системе приложения.

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

    Если Вы пользователь Android TV, то Вы должны задать себе один вопрос: сколько времени Вы действительно тратите на главный экран? Как часто Вы запускаете одно и тоже приложение? К счастью появилось приложение, которое позволит Вам сделать это автоматически .

    Предположим, что Вы смотрите только Netflix на Вашем Android TV. Почему бы не сделать так, чтобы при включении Android TV автоматически запускался Netflix?

    Для этого мы будем использовать приложение под названием Launch on Boot . Это приложение позволяет запустить одно или несколько приложений при включении или пробуждении Android TV. Это очень просто и понятно, и оно работает.

    Поэтому, если Вы еще этого не сделали, то сейчас самое время загрузить его на свой Android TV. Как только Вы установите приложение, появится краткое руководство. Вы можете прочитать его, или нажмите кнопку назад на пульте дистанционного управления, чтобы пропустить его.

    На главном экране загрузки идите вперед и активируйте первый переключатель, чтобы включить приложение.

    Здесь Вы можете выбрать для запуска ТВ при загрузке включив следующий переключатель - приложение будет автоматически запускать приложение ТВ каналов. Если вы хотите запустить другое приложение, пропустите этот переключатель.

    Вы, вероятно, захотите, чтобы понравившееся приложение можно было запускать не только при загрузке устройства, но и при выходе из спящего режима.

    Нажмите на кнопку «SELECT APP» для выбора приложения. В данной статье я использую Netflix. Вы можете выбрать, что Вам нравится.

    И, наконец, нажмите кнопку «TEST», чтобы проверить, что все работает как надо. Система перейдет в режим сна и Ваше приложение должно будет запуститься. И, конечно же, если Вы хотите попасть на домашний экран, просто нажмите кнопку Home на пульте дистанционного управления.

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

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

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

    С помощью стандартных инструментов (для версии не ниже Android 4.0)

    В главном меню своего аппарата заходим в «Настройки». Выбираем «Диспетчер приложений» (или «Менеджер приложений»), жмём:

    В появившемся списке приложений, которые установлены на нашем гаджете выбираем нужное (мы для примера выбрали «ChatOn»). «Тапнув» по строке с названием, мы откроем параметры этой программы, где нужно нажать кнопку «Отключить». Появится предупреждение системы и запрос на подтверждение команды. Отвечаем утвердительно. Теперь, открыв список приложений, можно увидеть, что в строке с «ChatOn» указано состояние – «Отключено»:

    Этот способ хорош тем, что если вдруг по каким-то причинам вам снова понадобилась отключенная программа, то вы всегда можете активировать её вернувшись к списку и нажав кнопку «Включить»:

    Следует учитывать один очень важный момент. Вы, проходя шаг за шагом по перечню приложений и выключая невостребованные, можете столкнуться с ситуацией, когда открыв раздел «Сведения о приложениях» столкнётесь с тем, что кнопка «Выключить» окажется неактивной (в нашем примере это приложение G-mail):

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

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

    Информационный видеоролик:

    Управление автозапуском с помощью приложения (без ROOT)

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

    Одной из таких утилит является AutoStart — No root . Это понятный, безо всяких «заморочек» менеджер автозапуска программ, который позволит определить те приложения, которые запускаются автоматически при включении гаджета.

    Работать с «Автостартом» предельно просто: на рабочем экране расположены два переключателя, которые и позволяют либо активировать, либо (в случае надобности) отключить режим автозагрузки. Выбор нужной софтины будет происходить посредством кнопки вызова браузера приложений:

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

    Чтобы на дисплей выводились уведомления о запущенных приложениях нужно поставить галочку напротив пункта «Show notification at boot-up». Программа на ставит в автозагрузку системные приложения.

    Управление автозапуском с ROOT (AutoStarts)

    Autostarts – одна из самых проверенных и долго присутствующих на рынке программ среди себе подобных. Большой функционал Autostarts и необходимость наличия ROOT прав накладывает на пользователя существенные риски, так как с помощью этой программы владелец Андроид устройства получает власть практически над всеми процессами операционной системы, в т.ч. и системными.

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

    Итак, . А после того, как Autostarts установлен и запущен, жмём иконку на рабочем столе, после чего программа начнёт обследовать все установленные приложения. После сканирования можно увидеть всё, что вызывает автостарт. Выбираем, что нам без надобности (например, на скриншоте приложение «Сериалы»). После включения кнопки «Запретить» появится запрос на права «Суперпользователя», жмём «Предоставить» и выбранная программа будет деактивирована:

    Отключенные программы отображаются в отдельном списке в виде перечёркнутого названия.

    Подробнее о работе Autostarts:

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