Это просто может устранить проблемы, возникающие у вас с приложением.
Если у вас возникла проблема с приложением на вашем смартфоне Android, возможно, вы читали, что вам следует зайти в настройки и выполнить “Принудительную остановку”, а затем “Очистить кэш”, чтобы исправить это. Часто это вполне может быть именно тем, что вам нужно сделать. Но почему это помогает и что вам следует делать, если это ничего не дает? Что именно делает “Принудительная остановка” на Android и что такое кэш? Позвольте мне объяснить.
БЫСТРЫЙ ОТВЕТ
Принудительная остановка и очистка кэша - два наиболее важных шага при попытке исправить своенравное приложение. Принудительная остановка и очистка кэша расположены в разделе "Информация" приложения. Чтобы получить доступ к разделу "Информация", долго нажимайте на значок приложения, а затем на значок "Информация о приложении".
Как найти принудительную остановку и очистить кэш на Android
Прежде чем мы рассмотрим, что делают принудительная остановка и очистка кэша, и почему вы хотели бы их использовать, нам нужно знать, как их найти в Android. Принудительная остановка и очистка кэша - это два действия, которые вы можете найти в разделе информация приложения. Чтобы получить доступ к разделу информации, долго нажимайте на значок приложения, а затем на значок i (на фото ниже). Точный внешний вид будет зависеть от версии Android и OEM-обложки.
Что делает принудительная остановка приложения?
Давайте сначала вернемся немного назад. В основе Android лежит ядро Linux. Это компонент, отвечающий за управление памятью и процессами, наряду с целой кучей других ресурсов. Всякий раз, когда вы запускаете приложение, вы фактически запускаете процесс Linux.
Процесс - это логический контейнер для программы (приложения). Он запускается ядром и используется как способ распределения системных ресурсов (включая память и процессорное время) между всеми запущенными приложениями. У каждого процесса есть идентификатор, известный как PID (идентификатор процесса), приоритет, собственное адресное пространство и некоторая информация о состоянии (запущенный, спящий, остановленный и зомбированный).
Задача ядра - планировать процессорное время и выделять память процессу, чтобы он мог выполняться. Принцип работы заключается в том, что ядро выделяет фрагменты процессорного времени каждому из запущенных процессов. Если процесс находится в спящем режиме (потому что он ожидает чего-то вроде данных из сети), то он не получает никакого процессорного времени. Это жонглирование процессами происходит на уровне миллисекунд, очень быстро, и точно так же, как кадры мультфильма, вы получаете видимость плавности и одновременного запуска нескольких программ.
При завершении работы приложения ядро очистит все ресурсы, используемые приложением (например, открытые файлы, выделенную память и т.д.), И в конечном итоге удалит процесс, созданный для этого приложения.
Каждое приложение может находиться в одном из нескольких различных состояний: запущено, приостановлено или остановлено. Они отличаются от состояний процесса, определенных Linux, и представляют “Жизненный цикл активности”, определенный Android. Google формулирует это так: “по мере того, как пользователь просматривает ваше приложение, выходит из него и возвращается обратно, экземпляры Activity в вашем приложении переходят в разные состояния в своем жизненном цикле”.
Интересная особенность Android заключается в том, что она никогда не убивает приложение напрямую. Вместо этого она убивает процесс, в котором выполняется действие, уничтожая не только действие, но и все остальное, выполняемое в процессе. Это может быть сделано, когда требуется освободить оперативную память или пользователь может завершить процесс, используя принудительную остановку в диспетчере приложений.
Когда все работает гладко, приложение переходит из одного состояния активности в другое и либо в конечном итоге будет отключено Android (после перехода в остановленное состояние), либо оно просто будет зависать в фоновом режиме, пока пользователь снова не выведет его на передний план. Однако, если что-то пойдет не так, приложение может вести себя неправильно. Оно может перестать реагировать на определенные события, застрять в каком-то цикле или просто начать делать непредсказуемые вещи.
В таких случаях приложение, возможно, потребуется отключить, а затем перезапустить. Для этого и предназначена принудительная остановка, она в основном отключает процесс Linux для приложения и устраняет беспорядок! Например, если не работает такое популярное приложение, как Disney Plus, то использование принудительной остановки - один из первых шагов в попытке это исправить.
Причина, по которой рекомендуется использовать принудительную остановку при попытке исправить неправильно работающее приложение, заключается в том, что 1) это приводит к уничтожению текущего экземпляра этого приложения и 2) это означает, что приложение больше не будет получать доступ ни к одному из своих файлов кэша.
Когда я должен очищать кэш для приложения на Android?
После завершения работы приложения следующим шагом будет удаление данных из каталога кэша. Когда приложению требуется временный файл, предварительно обработанный файл или когда оно хочет сохранить локальную копию файла, загруженного из Интернета, он будет помещен в каталог кэша приложения. У каждого приложения есть свой собственный каталог, куда оно может помещать рабочие файлы.
Идея заключается в следующем. Если приложение загружает файлы или данные из Интернета, то это было бы пустой тратой пропускной способности плюс пустой тратой времени на загрузку одних и тех же файлов при каждом запуске приложения. Вместо этого любые файлы, которые необходимо загрузить из Интернета, можно загрузить один раз, а затем сохранить в кэше. Время от времени приложение может проверять, действительны ли эти временные копии, и при необходимости обновлять кэш.
Очистка кэша освобождает место за счет удаления потенциально не используемых временных файлов.
Другим примером может быть, если приложению необходимо обработать файл, возможно, выполнить некоторое декодирование некоторых данных. Вместо того, чтобы выполнять это декодирование каждый раз при запуске приложения, что потребовало бы много циклов процессора, приложение может сделать это один раз, а затем сохранить результат в кэше. Опять же, приложение может проверить достоверность обработанного файла и при необходимости обновить кэш.
Причина, по которой это временные файлы, заключается в том, что приложение не должно полагаться на присутствие этих файлов, поскольку Android может удалить их, когда на устройстве заканчивается память. В этих случаях приложение просто повторно загружает данные или повторно обрабатывает файлы и создает новые в своем кэше.
Приложения также могут хранить файлы более постоянно, используя каталог данных приложения. Он отличается от каталога кэша и предназначен для постоянных файлов, принадлежащих приложению. Поскольку Android может удалять файлы в каталоге кэша без уведомления приложения, пользователям также безопасно удалять эти файлы с помощью кнопки “Очистить кэш”.
Это может помочь исправить приложения, ведущие себя неправильно, поскольку очищает пул временных файлов и заставляет приложение создавать их заново, что дает приложению своего рода новый старт. Часто это может решить проблему, поскольку ошибка заключалась в обработке временного или кэшированного файла.
Чтобы найти кнопку Очистить кэш, вам нужно зайти в “Информация о приложении”, а затем нажать “Хранилище" или "Хранилище и кэш”, в зависимости от версии Android и OEM-интерфейса.
Побочным преимуществом очистки кэша является то, что она освобождает место для хранения. Поэтому, если у вас заканчивается внутренняя память, может помочь очистка кэшированных данных для всех приложений.
Еще одна вещь, очистка кэша характерна не только для Android. Это одно из самых простых универсальных исправлений, наряду с перезагрузкой! Возможно, вы захотите прочитать наше руководство о том, например, как очистить кэш в любом браузере на любой платформе.