Мое устройство работает медленно, приложения начинают плохо работать / вылетать. Что я могу сделать?

62

Все работало нормально долгое время. Но внезапно устройство работает медленнее, чем обычно (например, приложения медленно реагируют на запуск действия - например, для чтения RSS требуется целая вечность, чтобы открыть статью). Кроме того, несколько приложений начинают зависать: принудительное закрытие, а также неожиданные перезапуски. Иногда это даже включает некоторую автоматическую перезагрузку устройства.

Могу ли я что-нибудь сделать, кроме сброса настроек? Желательно, чтобы он работал на некорневых устройствах.

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

Иззи
источник
Есть ли намеки, когда вы смотрите на вывод adb logcat?
ot--
1
Это лучше объяснить разработчиком. Я предполагаю, что есть, но я сомневаюсь, что смог полностью интерпретировать Java-стеки после сбоя.
Иззи

Ответы:

46

Поведение, описанное выше, в большинстве случаев указывает на что-то не так в системе. Наиболее вероятные кандидаты здесь:

  • Кэш приложения
  • Кэш Dalvik

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

рутированные и нерутированные устройства: удалите устаревшие приложения

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

Вы также можете отключить некоторые системные приложения, которые вам не нужны (ключевое слово: ). Для этого перейдите в « Настройки» → «Приложения» , выберите вкладку «Все» и пройдите по списку, чтобы найти эти приложения. Нажмите на их запись, и вы должны найти кнопку «отключить». Оно может быть серым: если это так, сначала нужно «принудительно остановить» приложение и, возможно, «удалить обновления», прежде чем кнопка «отключить» станет доступной. Обратите внимание, что эта возможность не будет существовать для всех системных приложений. Для корневых устройств доступно несколько инструментов, позволяющих «заморозить» или даже удалить системные приложения (будьте очень осторожны с последними); Одним из известных примеров является Titanium Backup .

устройства с root-доступом и без рута: очистите кэш приложений

Если вам повезет, это просто так: кэш приложений заполнен / испорчен. Это может быть легко решено даже на некорневых устройствах:

  • С методами, доступными по умолчанию в каждой системе Android:
    • На главном экране выберите «Настройки» → «Приложения» → «Управление приложениями» . Обязательно просматривайте все приложения , а не только загруженные
    • Просмотрите список, откройте каждое приложение и нажмите кнопку « Очистить кэш».
  • Более простой метод с использованием вспомогательных приложений: в Playstore доступно несколько приложений, которые позволяют очищать все кеши приложений одновременно, поэтому вам не нужно просматривать длинный список и делать это вручную. Одним из примеров такого приложения является 1Tap Cleaner , который также может очистить несколько других историй, таких как, например, история браузера.

рутированные устройства: Clear Application Cache и Dalvik Cache

Еще более вероятным для описанного случая является испорченный Dalvik Cache - особенно если вы тестировали много приложений, постоянно устанавливая / удаляя разные. Так что очистка Dalvik Cache наверняка решит ситуацию. Как побочный эффект, это конечно ускорит вещи. Никаких негативных побочных эффектов не ожидается.

  • С помощью пользовательского восстановления
    Это самый эффективный способ и обязательно действительно сделать работу. Этот пример основан на восстановлении ClockworkMod , которое наиболее распространено. Это должно быть эквивалентно AmonRa Recovery .
    • Загрузитесь в режиме восстановления (как это сделать часто зависит от используемого устройства / ПЗУ. Для пользователей CyanogenMod это проще всего: нажмите и powerудерживайте кнопку, выберите «Перезагрузка», выберите «Восстановление»)
    • Используя Volumeэлементы управления, выберите Wipe Cache и подтвердите его, powerнажав кнопку. На следующем экране подтвердите действие таким же образом. Таким образом, вы легко очищаете кэш приложений, как описано выше, сразу, без необходимости в дополнительном приложении.
    • Перейти к Advanced меню, выбрать Clear Dalvik Cache так же , как с Volumeи Powerключами и утвердить его.
    • Вернитесь в главное меню и выберите Reboot . Следующая перезагрузка , как обычно, займет больше времени, так что не беспокойтесь: Android должен восстановить Dalvik Cache , это абсолютно нормальное поведение.
  • Вспомогательные приложения.
    Некоторые приложения предлагают варианты очистки Dalvik Cache (например, SystemCleanup и Titanium Backup PRO Key ★ root ). Вы можете попробовать это; но я не уверен, что один из них действительно "стирает" кеш Dalvik . По крайней мере, для Titanium Backup я знаю, что он удаляет только остатки из неустановленных приложений (т.е. устаревших файлов Dalvik).

устройства с рутированным и нерутированным последним средством: сброс настроек

Если ничего из перечисленного не решит вашу проблему, всегда есть Factory Reset . По сути, это делает все вышеперечисленное (стирание кэша приложений и Dalvik Cache ), но также стирает /dataраздел. Это означает: все ваши настройки и данные (кроме тех, которые хранятся на вашей SD-карте), а также все приложения, которые вы установили самостоятельно, исчезли. Поэтому убедитесь, что у вас есть хорошая резервная копия, прежде чем делать это (см., Например, полное резервное копирование нерутированных устройств, чтобы узнать, как этого добиться).


рутированные устройства: fstrim

Еще одна причина замедления вещей лежит в хранилище. Немного предыстории для понимания:

На флэш-памяти, используемой в наших устройствах, каждая ячейка может быть записана только столько раз. Чтобы предотвратить потерю емкости и износ, контроллер флэш-памяти применяет алгоритм, называемый «выравнивание износа», для равномерного распределения записей по носителю. Конечно, для предотвращения потери данных вы хотите записывать только в «пустые места» (кроме случаев, когда файл явно перезаписывается). И тут появляется виновник: чтобы ускорить процесс, файловая система в большинстве случаев только помечает файлы как удаленные, но не сообщает контроллеру об «освобожденных блоках» - так что со временем она становится неэффективной.

Android 4.3 решает эту проблему с помощью соответствующих fstrimвызовов, сообщая контроллеру один раз в день, какие блоки считать свободными. Некоторые ПЗУ интегрировали аналогичную функцию также в более ранних версиях Android, монтируя файловые системы с discardопцией (таким образом, контроллер сразу получает информацию об удалениях), но это немного замедляет удаление. Для устройств, которые не обращались к этому ни одним из двух способов, возможно, стоит взглянуть на приложение Lagfix , которое вызывает fstrimдружественные к пользователю пути для выбранных разделов. Однократное выполнение этого на давно используемом устройстве может ускорить запись в 30 раз, и даже чтение станет немного быстрее.

Рекомендации:

Иззи
источник
Очистка кеша dalvik не требуется, если вы не используете новое ядро ​​/ ROM. При очистке он удалит ВСЕ те файлы, которые будут воссозданы (за исключением неустановленных программ, о которых вам предупреждает Titanium).
NoBugs
Отчасти правильно. Если вы часто устанавливаете / удаляете / обновляете приложения, кэш Dalvik может быть загроможден (как вы упоминаете TB, поэтому он находит там что-то для очистки). Также есть сообщения о том, что кеш Dalvik в некоторых приложениях был «поврежден» Очистка кеша Dalvik приводит к чистой перестройке, которая также «дефрагментирует» его. Так что это может ускорить процесс, а также «исправить» некоторые проблемы.
Иззи
Я обычно регулярно перезагружаю свое устройство и использую приложение
Greenify
@ user3275057 Это все равно, что сказать: «Я регулярно проветриваю свои комнаты и использую энергосберегающие опции на своих домашних устройствах, но пол все равно пачкается, а вещи мешают». Хотя оба варианта полезны, они упускают некоторые важные части - как объяснено выше: иногда вам приходится вытирать пол и убирать комнату :)
Иззи
3

Мой HTC One V стал настолько медленным, что я собирался разбить его. Попробовав все без работы, я просмотрел свои приложения и удалил несколько. По всей видимости, причиной всех неприятностей был Джек, ты не знаешь. Как только он отключился от моего телефона, моя скорость резко возросла и снова начала нормально работать. Не уверен, поможет ли это кому-то еще, но в случае непредвиденной ситуации я просто хотел, чтобы вы знали.

Alix
источник
Хорошая точка зрения. Пропустил эту тему в моем ответе (обновлено).
Иззи
2

Как ускорить медленный Android

Помните день, когда вы купили свой андроид? Это было не медленно. Это было так быстро. Что случилось? Кремний стал медленнее? Биты были забиты? Конечно, нет. Вы просто запускаете больше невидимых фоновых сервисов.

Во-первых, отключите автоматическое обновление в

  • Samsung Galaxy Store (если применимо),
  • в настройках> обновления программного обеспечения,
  • В секретном меню настроек разработчика (посмотрите)
  • и Google Play Store

Это важно, потому что в противном случае они просто переустанавливают / обновляют себя.

Скриншот Скриншот Скриншот Скриншот

Затем найдите приложения, которые открываются автоматически после их удаления с помощью обслуживания устройства> очистить память и параметры разработчика> запустив службы, и удалите или сбросьте их до заводских значений по умолчанию на столько, сколько вы можете (я также удаляю разрешения для них, чтобы они не могли читать из хранилища тайно в фоновом режиме и т. д.). Некоторые системные приложения, которые вы, возможно, захотите сохранить, такие как сервисы Google Play и т. Д. Просто удалите те, которые, как вы уверены, вам не нужны

Помните, что очистка памяти НЕ ускоряет работу устройства, она только показывает, какие приложения автоматически загружают фоновые процессы, поэтому вы можете удалить их. Хорошим примером этого является Instagram, если вы заметите, что он продолжает работать, пока он закрыт, потому что он предварительно загрузит десятки видео из Instagram в ваш канал, прежде чем вы даже откроете приложение. Хотя предварительная загрузка, как правило, рассматривается как оптимизация, если у вас достаточно агрессивно загружаемых приложений одновременно, и приложения безопасности следят за этими приложениями, а также заполняют ОЗУ, которая затем запускает сборку мусора во время выполнения Java и, возможно, даже подкачку памяти, плюс любые действия, которые вы фактически запрашиваете, плюс сообщение о вашем местоположении в Google, плюс сообщение о вашем местоположении для программ «поиска телефона», плюс проверка трафика на ваших будущих поездках, а также анализ вашего календаря на предмет использования AI в Google Home, плюс проверка обновлений, запрос уведомлений и т. д., и т. д., затем вы можете обнаружить, что ваше устройство выполняет гораздо больше операций, чем оно может обработать. Простой способ проверить это - включить опцию «Максимальное энергосбережение» и посмотреть, улучшается ли батарея и скорость отклика. Если это так, то это во многом потому, что вся обширная фоновая обработка запрещена.

Также помните, что отключение автоматических обновлений само по себе не ускоряет работу телефона, оно просто позволяет предотвратить появление неожиданных снижений производительности в будущих обновлениях. Это делает вас привратником, так что ваш телефон не может волшебным образом замедляться со временем, а, скорее, позволяет вам выбирать, какие приложения вы доверяете обновлять (и, конечно, обновлять любимые приложения). Это похоже на метод Kon Mari для вашего телефона.

Скриншот Скриншот Скриншот Скриншот

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

Я имел выдающийся успех с этим. И моя частота кадров в 2 раза лучше, чем скорость открытия приложений. Это фантастика.

О, а также включить фоновые ANR, чтобы вы могли видеть невидимые киоски

Скриншот

Джонатан
источник
AFAIK, отключение автообновлений просто отключает автоматическую установку - система все равно проверит доступность (и уведомит, если таковые имеются; см. Скриншот № 4 для подтверждения). Так что это ничего не ускорит. Я бы предпочел полностью отключить Galaxy Apps (если применимо), так как я не понимаю, какие дополнительные преимущества это дает, если вы уже используете Playstore. «Очистка памяти» также вызывает сомнения: то, что вы очищаете, должно быть снова загружено, что замедляет работу. Это должно быть сделано очень избирательно. Так что спасибо, что поделились; это сработало фантастически для вас, но следует применять с осторожностью :)
Иззи
Очистка памяти не для того, чтобы ускорить процесс, а для того, чтобы увидеть, какие автозагрузки вы можете удалить. В наши дни слишком много приложений запускают процессы в фоновом режиме, что приводит к снижению скорости работы телефонов. Единственный способ остановить это - полностью удалить эти приложения.
Джонатан
Отключение автоматических обновлений не означает, что что-то должно быть быстрым, это мешает установке раздувать ПОСЛЕ ТОГО, КАК вы удалили его. Если он отправляет вам уведомления, вы можете просто заблокировать их. Хорошим примером этого является Samsung Quick Connect, последняя версия которого выполняет слишком медленные длинные процессы bavkground. И это автоматически установлено и обновлено. Но старая версия в порядке.
Джонатан
1
Я обновил свой ответ, чтобы уточнить, что приложения запускают фоновые процессы, которые замедляют работу телефона, и пояснил, что очистка ОЗУ и отключение автоматических обновлений не являются решением само по себе.
Джонатан
1
«В наши дни слишком много приложений запускают процессы…». Я просто имел в виду «атомарность», которую следует избегать и прояснять конкретные вещи;) этот инструмент, встроенный в Samsung, исходит от CM, я бы не стал доверять. И устанавливает ли вы вещи, которые вы только что удалили, что-то специфическое для Galaxy Apps? Я никогда не видел этого ни на одном из моих устройств. Если вы хотите избежать обновлений в используемых вами приложениях, это можно отключить для каждого приложения - и это действительно необходимо здесь и там. Плюс: согласен, некоторые приложения для Сэма могут быть доступны только в GalaxyApps. (PS: +1 :)
Иззи
1

У меня были очень похожие проблемы с моим телефоном. Ответ, который я получил на мой запрос на форумах джакузи, казалось, исправил это. (У меня закрывались приложения, клавиатура не появлялась или не закрывалась и т. Д.).

Зайдите в настройки> power Untick fastboot.

Выключите затем на вашем телефоне.

Это сохраняет полный сброс, если он работает, что он сделал со мной.

Starre
источник
0

Я заметил, что когда я запускаю приложение «Галерея», в течение долгого времени дела идут очень медленно, а затем снова начинают нормально работать. Я подозреваю, что это потому, что у меня огромное количество фотографий, и я почти никогда не использую приложение Галерея. Я думаю, что это может быть повторное сканирование и каталогизация в фоновом режиме или другие функции типа обслуживания.

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

Сегодня я сделал оба, и все стало очень медленно в течение часа после того, как я закончил. Но я просто оставил это в покое, и теперь все снова гладко, как стекло.

Иногда нам просто нужно позволить механизму выполнять свою работу, не балуясь с ним, тем самым делая вещи хуже. :)

AzDayton
источник
В обоих ваших примерах это не какой-то файл, над которым вы работаете, а база данных. Для Галереи MediaScanner должен позаботиться об этом после его запуска (сканирование новых медиа-файлов и обновление базы данных; события, вызывающие это, включают boot_completedи sdcard_mounted). Для ваших журналов вызовов это снова база данных, которая может автоматически «вакуумироваться» (то есть не фрагментироваться), но это должно занять максимум несколько секунд. Не уверен, что тут так сильно тормозит, но если это разрешится само собой, тем лучше :)
Иззи