Многие установленные приложения аварийно завершают работу после OTA-обновления до Android 4.2

Я выполнил обновление по воздуху с Android 4.1 до 4.2 на своем Samsung Grand GT-I9082. Вроде нормально завершилось (некоторое время экран с роботом и полосой прогресса, потом какие-то сообщения об "оптимизации" и "запуске" приложений, потом загрузка).

После обновления сам телефон работает нормально, однако многие сторонние приложения теперь вылетают при запуске с сообщением «Приложение [имя] было остановлено» (вольный перевод, так как интерфейс моего телефона не на английском языке). Это последовательно и специфично для приложения — либо оно всегда дает сбой, либо просто работает нормально. Единственным небольшим исключением является Chrome, который сразу открывается и закрывается, но не выдает сообщения.

  1. Очистка кеша приложения не помогает
  2. Полное удаление приложения и переустановка действительно исправляет это (пока что - для тех немногих, для кого я это сделал)

Что еще я могу попробовать?

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

Ответы (3)

Если ваше устройство рутировано и у вас установлено кастомное рекавери: Сотрите кеш Следующая загрузка займет немного больше времени (поскольку кеш Dalvik должен быть перестроен), но проблема должна исчезнуть.

Если это невозможно, вы можете попытаться сделать резервную копию затронутых приложений и их данных, используя, например , Helium Backup , затем удалить приложения и восстановить их (включая их данные) из резервной копии. Таким образом, их кеш Dalvik также будет перестроен, вы не потеряете свои данные, и Helium может сделать это в пакетном процессе, чтобы сэкономить вам кучу кликов.

Телефон не рутирован. Считаете ли вы, что это проблема с кешем «dalvik», или это только одна из возможных причин? Судя по тегу, я ничего не могу с ним сделать без рута, поэтому мог бы начать с переустановки. :\
Я считаю это очень вероятной причиной, так как произошла смена версии ОС (что также может привести к появлению более новой версии Dalvik). Кэш Dalvik для приложения создается при установке или при его отсутствии, резервная копия ADB/Helium не сохранит его, поэтому затем он будет создан заново. Просто попробуйте сначала с одним приложением и посмотрите, что вы теряете? :)
Переустанавливал все вылетает. Гелий кажется в основном пустой тратой времени, поскольку ему не удалось восстановить данные для всех игр, кроме одной, которые у меня есть, и эти несколько являются невосстановимыми данными на моем телефоне. Я рад, что я не очень забочусь о рекордах .. :)
Это, скорее всего, не вина Helium, а скорее баг в вашей версии Android (у меня было то же самое на нескольких устройствах, и он также не работал с равниной adb restore, для которой Helium является фронтендом, в то время как на других он работал гладко).

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

**Создавайте резервные копии важных файлов в Dropbox, Google Drive и т. д.

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

В параметрах разработчика попробуйте изменить среду выполнения. Если ART установлен, это может вызвать проблемы, потому что в настоящее время 95% приложений Android работают на DVM (Dalvik Virtual Memory).

ОП говорит, что они используют 4.2; ART не был доступен до 4.4 AFAIK.