- Как, почему и когда надо чистить кэш на Android
- Что такое кэш на Андройд
- Очистка кэша и данных на Android
- Когда надо чистить кэш
- Как очистить кэш и данные на Android
- Надо ли чистить кэш Android-приложений
- Мы нашли секретный способ управлять фоновыми процессами в телефоне. Показываем
- Как управлять фоновыми процессами
- Как включить параметры разработчика
- Как управлять фоновыми процессами
- Заключение
- На Android, какая разница между запущенными процессами и кэшированными фоновыми процессами?
Как, почему и когда надо чистить кэш на Android
Кэш приложений может быть спорной темой на Android. Многие люди постоянно чистят кэш приложений, веря в то, что это позволит смартфону работать быстрей. Другие говорят, что это, в первую очередь, сводит на нет всю цель кэширования и просто увеличивает время запуска приложений и выполняемых действий. Истина, как обычно, где-то посередине. Некоторые приложения могут не использовать кэширование эффективно, из-за чего используются излишне большие объемы памяти. Иногда кэш может вызывать проблемы после выхода обновления и надо его сбрасывать. А еще некоторые приложения могут начинать работать медленнее, когда их кэш становится очень большим. Сказать однозначно, надо ли его удалять, нельзя. Но сейчас рассмотрим эту тему подробнее, чтобы вы понимали, когда это делать и как?
Надо ли чистить кэш телефона?
Что такое кэш на Андройд
Кэширование в компьютерном мире это то, что позволяет приложениям, таким, как браузеры, игры и потоковые сервисы хранить временные файлы, которые считаются актуальными для уменьшения времени загрузки и увеличения скорости работы. YouTube, Карты, музыкальные сервисы и множество других приложений сохраняют информацию в виде данных кэша. Это могут быть миниатюры видео, история поиска или временно сохраненные фрагменты видео. Кэширование может сэкономить много времени, так как качество и скорость Интернета не везде одинаковы. Но по иронии судьбы, когда приложения выгружают много данных на ваш телефон, это в конечном итоге замедляет его работу, особенно, когда остается мало места на встроенной памяти.
Наш Иван Кузнецов не так давно писал о том, что никогда не чистит кэш и считает это не нужным. Многие из вас, возможно, с ним не согласны. Да я и сам переодически провожу эту процедуру. Тем не менее, для полноты картины можете ознакомиться с его мнением.
Очистка кэша и данных на Android
Хотя мы часто упоминаем очистку кэша и данных в одном ключе, на Android это два совершенно разных действия. Например, музыкальные сервисы часто сохраняют в кэш информацию, относящуюся к исполнителям, которых вы слушали, но которые не входят в вашу библиотеку. Когда кэш приложения очищается, все упомянутые данные стираются.
Очистка лишней не будет? Не факт.
Более существенные данные включают в себя пользовательские настройки, базы данных и данные для входа в систему. Когда вы очистите кэш, это все удалится и будет не очень приятно. Если говорить грубо, можно сказать, что очистка кэша придает приложению тот вид, который был сразу после его установки, но у вас останутся данные, которые вы сами осознанно сохранили (загруженные песни, видео в оффлайн, карты и так далее). Если вы удалите и эти данные, то приложение будет вообще нулевым. Если чистите и кэш, и данные, проще тогда и приложение переустановить, чтобы вообще все красиво было.
Как очистить память смартфона. Пять простых шагов.
Когда надо чистить кэш
В чем-то я согласен с Иваном и с его мнением, которое я приводил в начале статьи. Нет смысла чистить кэш часто. После того, как вы его очистили, приложение все равно его создаст заново. Только в это время оно будет работать еще медленнее.
Тут важно найти баланс и понять, действительно ли ваш смартфон тормозит из-за кэша или, например, он просто старый и уже не тянет. Если не вникать в это, то можно посоветовать чистить кэш один раз в 3-6 месяцев, но быть готовым, что первые несколько дней скорость работы будет чуть ниже. В итоге, вы как бы освежите приложение, удалив лишний мусор и заново собрав только то, что нужно.
Google Play рассылает пустые обновления приложений. Что делать?
Как очистить кэш и данные на Android
Точную инструкцию для каждого смартфона дать не получится, так как все зависит от производителя и версии ОС, но общие правила будут следующими.
Шаг 1: Запустите «Настройки» и перейдите в раздел «Хранилище» (или найдите его поиском). Так вы сможете узнать, сколько памяти вашего смартфона занято и чем.
Шаг 2. В разделе «Хранилище» найдите «Приложения» (или «Другие приложения») и выберите его. В нем будут перечислены все приложения, а также то, сколько места каждое из них занимает. В некоторых версиях ОС можно найти сортировку приложений по алфавиту или размеру.
Шаг 3: Зайдите внутрь приложения и удалите кэш или данные. Только надо понимать, что это действие необратимо.
Три простых шага для очистки кэша.
В отношении специальных приложений для очистки я очень категоричен и не рекомендую ими пользоваться. Несмотря на их обещания ускорить систему чуть ли не в разы, в лучшем случае они просто сделают то же, что я только что описал. Так почему бы не сделать это самому без установки сомнительных приложений, которые еще и будут собирать ваши данные? Единственное приложение-оптимизатор, которому я доверяю, это Google Файлы, но работает оно именно с хранилищем и чистит в первую очередь мусор. Хотя, на него тоже нельзя слепо полагаться, но оно сделано Google, а к ней доверия куда больше, чем к каким-то левым разработчикам.
Если вы все еще хотите установить подобное приложение, просто помните о том, что они работают в фоновом режиме и используют системные ресурсы. Даже если они что-то ускорят, то сразу замедлят обратно.
Надо ли чистить кэш Android-приложений
Возможность очистки данных — это действительно полезная функция для решения многих проблем, уникальная для Android. Но как и любой полезной вещью злоупотреблять ей не стоит. Не надо чистить кэш и память каждый день. Делайте это периодически и только по мере надобности. Начал телефон работать медленно — пробегитесь по хранилищу. Если увидели, что какое-то из приложений занимает слишком много места, хотя не должно, очистите кэш.
Еще больше полезных советов и рассуждения в нашем Telegram-канале.
Еще раз: очистка кэша не испортит ваш смартфон, но приложение потеряет часть сохраненных данных и оптимизированных под вас настроек. Некоторое время придется накапливать их заново, зато так можно убрать действительно лишнее. Раньше можно было одной кнопкой очистить кэш всех приложений, теперь только по одному, но, наверное, это к лучшему.
Чего точно не стоит делать с кэшем, так это чистить его каждый день или каждую неделю. Так вы точно не сделаете лучше никому.
Источник
Мы нашли секретный способ управлять фоновыми процессами в телефоне. Показываем
Работа смартфона — весьма сложный процесс, который не прекращается ни на минуту даже ночью, когда телефон лежит у вас под подушкой. Большинство процессов в смартфоне продолжают свою работу незаметно для глаз пользователя и могут потреблять достаточно большое количество ресурсов.
Многие пользователи ошибочно считают, что оперативную память «съедают» те приложения, которые остаются свернутыми, и если их закрыть, можно таким образом освободить бОльшую часть памяти.
На самом деле это не так. Свернутые приложения, находящиеся в режиме ожидания — это лишь верхушка айсберга. По сути – это только кэшированные данные, которые позволяют вам вернуться в приложение без потери последних данных. Закрыв их, вы сможете лишь немного освободить оперативную память телефона. Основная же часть ресурсов приходится на процессы или службы приложений. Именно они потребляют оперативную память и расходуют заряд батареи даже тогда, когда приложение закрыто.
Не все из них одинаково полезны, но есть и те, которые могут отвечать за безопасность устройства и его стабильную работу. Тем не менее, если телефон стал слишком задумчивым и вы замечаете, что он потребляет заряд батареи, даже находясь в режиме ожидания, вам будет полезно узнать как ограничить работу фоновых процессов и тем самым освободить оперативную память устройства, а также повысить его быстродействие.
Как управлять фоновыми процессами
Получить расширенный контроль над фоновыми процессами можно с помощью специальных инструментов, встроенных в операционную систему. В смартфонах Android эта возможность реализована с помощью скрытого меню для разработчиков.
Как включить параметры разработчика
Для того, чтобы активировать режим разработчика, необходимо перейти в Настройки телефона, открыть пункт «Сведения о телефоне», затем «Сведения о ПО» и несколько раз подряд нажать на пункт «Номер Сборки» до появления системного уведомления о том, что режим разработчика активирован.
Затем нужно вернуться назад, в главные настройки. Если все было сделано правильно, вы увидите, что внизу появился новый пункт меню «Параметры разработчика».
Как управлять фоновыми процессами
Для того, чтобы управлять фоновыми процессами, в меню «Параметры разработчика» необходимо найти пункт «Приложения». Здесь находится несколько параметров, отвечающих за работу фоновых процессов. Например, параметр «Вытеснение фоновых Activity» позволяет принудительно останавливать действия приложений после их закрытия (не рекомендуем включать), а параметр ANR в фоновом режиме — отображать фоновые уведомление в случае, когда какой-то процесс не отвечает.
Больше всего нас здесь интересует параметр «Лимит фоновых процессов», который позволяет выбрать какое количество процессов будет использоваться вашим смартфоном в фоне. Данное ограничение затрагивает в основном сторонние приложения, установленные пользователем, поэтому можно не переживать за работающие системные службы.
По умолчанию здесь установлено значение «Стандартное ограничение».
Для слабых смартфонов с небольшим количеством оперативной памяти можно ограничиться значением «не более 1−2 процессов». Для устройств «пошустрее» можно установить лимит «не более 4 процессов».
Полное отключение фоновых процессов может повлиять на корректную работу некоторых приложений, поэтому мы не рекомендуем использовать данную функцию по максимуму, особенно если вы активно пользуетесь мессенджерами, почтой и другими приложениями, которые требуют проверки уведомлений.
Заключение
Теперь вы знаете, как, изменив лимит фоновых процессов, можно существенно снизить потребление оперативной памяти и повысить общее быстродействие смартфона. Но помните, что использовать меню разработчика стоит только в том случае, если у вас наблюдаются существенные проблемы в работе устройства и не пренебрегайте этим правилом без крайней необходимости, в противном случае есть риск навредить работе гаджета.
Источник
На Android, какая разница между запущенными процессами и кэшированными фоновыми процессами?
На Android, когда я смотрю в «Настройка» -> «Приложение», под вкладкой «running» я вижу, что память разрезается на части: «используемая память» и «свободная память», также приложения либо помещаются В «используемую память» или «без памяти». Приложения в разделе «Свободная память» отмечены как «кэшированный фоновый процесс».
Итак, что такое «кэшированные фоновые процессы»? Они все еще находятся в памяти, а не переключаются на «диск» (как это делают настольные компьютеры / ноутбуки), правильно? Когда пользователь вставляет один из этих «кешированных фоновых процессов», он будет отображаться сразу же, поскольку он все еще находится в памяти, точно так же, как работает процесс, правильно?
Что делает Android, когда он «кэширует» приложение?
Итак, что такое «кэшированные фоновые процессы»?
Поскольку вы запрашиваете техническую интерпретацию чего-либо, указанного в пользовательском интерфейсе устройства, определение может отличаться в зависимости от устройства, если производители устройств решили переделать приложение «Настройки».
При этом «кэшированные фоновые процессы» обычно относятся к процессам, которые не имеют активности переднего плана и не имеют работающего сервиса. Эти процессы хранятся в памяти просто потому, что у нас достаточно памяти для этого, и поэтому, как вы заметили, пользователь может быстро вернуться к этим процессам. Поскольку Android начинает нуждаться в большей системной памяти для других процессов, «кэшированные фоновые процессы», как правило, являются процессами, которые заканчиваются для освобождения оперативной памяти системы.
Выдающимся примером «кэшированного фонового процесса» будет тот, в котором пользователь запустил приложение, коротко щелкнул его, а затем нажал HOME, чтобы вернуться на главный экран. Если у процесса нет работающего сервиса, я ожидаю, что он будет указан как «кэшированный фоновый процесс».
Они все еще находятся в памяти, а не переключаются на «диск» (как это делают настольные компьютеры / ноутбуки), правильно?
Верный. Устройства Android не используют пространство подкачки.
Почему бы не посмотреть в исходный код приложения «Настройка» .
В моем Nexus 4 «Настройка» -> «Приложение» -> «Запуск» выглядит следующим образом.
Прежде чем начать работу, в иерархии важности в Android Process есть пять уровней. Эти
1) Процесс переднего плана,
2) Видимый процесс,
3) Сервисный процесс,
4) Фоновый процесс,
5) Пустой процесс
Более подробную информацию вы можете найти в документе «Процессы и потоки» на сайте разработчика Android .
Я просмотрел код, и оказалось, что «SHOW CACHED PROCESSES» показывает те процессы , иерархия важности которых равна или ниже, чем «Фоновый процесс» . С другой стороны, «SHOW RUNNING SERVICES» показывает те, чья иерархия важности равна «видимый процесс» или выше . Я бросил некоторые детали, чтобы четко показать основную точку. Здесь вы можете увидеть полный исходный код этой части.
Итак, вернемся к вашему вопросу,
Они все еще находятся в памяти, а не переключаются на «диск» (как это делают настольные компьютеры / ноутбуки), правильно?
Да, они все еще в памяти , но в конечном итоге системе Android может потребоваться удалить старые процессы для восстановления памяти для новых или более важных процессов. Чтобы определить, какие процессы сохранить и что убить, система помещает каждый процесс в «иерархию важности».
Когда пользователь вставляет один из этих «кешированных фоновых процессов», он будет отображаться сразу же, поскольку он все еще находится в памяти, точно так же, как работает процесс, правильно?
Верно . Например, единственной причиной сохранения «пустого процесса» является улучшение времени запуска в следующий раз, когда компонент должен запускаться в нем.
Что делает Android, когда он «кэширует» приложение?
AFAIK, он просто не убивает процесс и не позволяет ресурсам немедленно отвечать на Пользователь, когда он возвращается.
Ранжирование процесса
Операционная система Android пытается поддерживать приложение, работающее как можно дольше, но когда доступная память низкая, он попытается освободить ресурсы в системе, убив процессы с меньшим значением frst.
Это когда ранжирование процесса входит в картину; Процессы Android оцениваются в следующих категориях: от более высокого приоритета до более низких приоритетов:
- Процесс переднего плана: это процесс, в котором размещается действие или служба, с которыми пользователь взаимодействует: служба, запущенная на переднем плане или служба, выполняющая обратные вызовы жизненного цикла
- Видимый процесс : это процесс, в котором размещена приостановленная деятельность или служба, ограниченная видимой деятельностью
- Сервисный процесс: это процесс, который содержит службу, не связанную с видимой деятельностью
- Фоновый процесс : это процесс, который содержит невидимую активность; Все фоновые процессы сортируются по списку наименее используемого (LRU), поэтому наиболее последними используемыми процессами являются последние убитые процессы, когда они
- Пустой процесс : это процесс, используемый для кэширования неактивных компонентов Android и для улучшения времени запуска компонента
Когда система достигает точки, требующей освобождения ресурсов, процессы, которые могут быть убиты, будут отсортированы с учетом рангов процесса, используемых в прошлом процессов и запущенных компонентов.
Источник :
Асинхронное программирование на Android – второе издание – Хелдер Васконселос – июль 2016 года
Источник