Как исправить ошибку датчиков Android 10, вызванную поврежденным постоянным разделом
На вашем устройстве перестали работать датчики после обновления до Android 10? Это известная проблема, вызванная повреждением раздела «Persist», что приводит к неработающим датчикам. В этом посте мы обсудим, что это за проблема, ее причина и, наконец, расскажем, как исправить ошибку датчиков Android 10 на таких устройствах, как Google Pixel, Xiaomi Mi A3 и т. Д.
Ошибка датчиков
Проблема в том, что после обновления Android 10 пользователи заметили, что датчики на устройстве перестали работать. Это означает, что любые функции, которые используют датчики, такие как автоматическая яркость, автоповорот, двойное касание для пробуждения, Ambient / Always-On Display, датчики приближения и т. Д., Также перестали работать. Это, безусловно, очень сильно влияет на использование устройства.
Об этой проблеме впервые сообщили в прошлом году пользователи Google Pixel на сайте Форумы XDA и также был авторизован Официальный трекер проблем Google. Об этом также писали такие известные публикации, как 9to5Google, Android Authorityи т. д. И та же ошибка снова была обнаружена пользователями серий Xiaomi Mi A3 и Mi A2 после обновления Android 10. Отчеты были размещены в нескольких ветках в Сообщество Mi, а также в XDA.
Эта ошибка, кажется, случайным образом влияет на устройства, поэтому не имеет значения, обновлялись ли вы по беспроводной сети, загружая обновление неопубликованно или перепрошивая заводской образ (или ПЗУ с быстрой загрузкой).
Что вызывает это?
Итак, что в первую очередь вызывает проблему? Согласно электронному письму, отправленному Google, проблема вызвана некоторыми новыми проверками, введенными Qualcomm в Android 10 (Q), которые предотвращают работу датчиков в случае обнаружения поврежденных файлов калибровки. Это письмо было получено старшим членом XDA никилнангия, тот же человек, который предоставил нам и затронутым пользователям возможное исправление.
Но это не все. Ошибка датчиков также подозревается, что это вызвано восстановлением TWRP, повреждающим раздел ‘Persist’.
По словам члена XDA nikhilnangia: «TWRP использует раздел / persist для хранения журналов, и кеширование может вызвать серьезные проблемы. По сути, этот раздел имеет размер всего 40 МБ, а журналы (в частности, для тех, кто делает резервные копии nandroid) могут занимать более 20 МБ, тем самым повреждая файлы заводской калибровки и конфигурации на телефонах Pixel. Было бы предложено вообще не писать в этот раздел, если это возможно, или поставить галочку для очистки файлов журнала, если они превышают определенную дату или размер.”
Один из ведущих разработчиков TWRP bigbiff имеет признал проблему и уже нажал необходимые патчи в исходном коде TWRP.
Даже если у вас не установлен TWRP на вашем телефоне прямо сейчас, но если он у вас был раньше и вы использовали его на Android Pie, возможно, он уже вызвал повреждение, повредив данные калибровки датчика, хранящиеся в разделе «Persist».
Возможные исправления
По словам нескольких пользователей, которые столкнулись с этой проблемой, возврат к Android Pie позволяет датчикам работать нормально. Однако это неправильное решение, поскольку данные калибровки в постоянном разделе все равно будут повреждены. Android Pie просто игнорирует поврежденные данные, что также означает, что некоторые датчики могут работать неэффективно. Это, безусловно, также противоречит цели поддержания программного обеспечения вашего телефона в актуальном состоянии. В конце концов, если вы снова перейдете на Android 10, проблема все равно останется.
Некоторые пользователи также пытались перепрограммировать постоянный раздел с чужого устройства. Хотя это может решить проблему, но также будет означать, что вы потеряете уникальные данные заводской калибровки вашего устройства, такие как конфигурация звука, камеры и датчика. Это следует рассматривать как самое последнее средство, если ничего не работает..
Итак, есть ли какой-либо способ исправить эту ошибку датчиков на Android 10? Да, прочтите инструкции впереди.
Инструкции по исправлению ошибки датчиков Android 10
Если ваш телефон рутирован, вы можете вручную удалить кеш и журналы, созданные TWRP в постоянном разделе, который вызвал повреждение и должен быть основной причиной проблемы. Это, сопровождаемое некоторыми дополнительными шагами, позволит вам исправить датчики на вашем устройстве под управлением Android 10.
Эти инструкции относятся не только к телефонам Google Pixel или Xiaomi Mi A3, но также относятся к любым устройствам, на которых имеется ошибка датчика на Android 10.
Мы разделили инструкции на пять основных шагов, чтобы помочь вам понять весь процесс.
Шаг 1. Выполните рутирование устройства на Android 10
Первым шагом процесса является получение root-прав на вашем устройстве на Android 10. Вам потребуются права root для резервного копирования исходного постоянного раздела вашего устройства, а также для удаления файлов кэша и журналов TWRP, как показано в следующих шагах. Если он уже внедрен, вы можете пропустить этот шаг и перейти к следующему.
Руководства по рутированию для некоторых устройств, которые, как известно, подвержены этой проблеме, приведены ниже. Если руководства для вашего конкретного устройства нет в списке, вы можете найти его на нашем веб-сайте или на форуме XDA-Developers.
В качестве альтернативы, если у вас есть копия стандартного загрузочного образа прошивки, установленной на вашем телефоне, вы можете получить root-права, используя метод Magisk Patched Boot Image. Инструкции для того же можно найти здесь.
Шаг 2. Создайте резервную копию исходного раздела Persist.
Теперь второй шаг – создать резервную копию исходного постоянного раздела вашего устройства. Поскольку на следующем этапе вы будете вносить изменения в указанный раздел, рекомендуется создать резервную копию исходного раздела в качестве запасного варианта, если что-то пойдет не так.
- Для этого сначала загрузите и установите эмулятор терминала на свое устройство Android. Вы можете использовать кого угодно, но мы рекомендуем ‘Termux‘. После установки приложения запустите его из панели приложений.
- Теперь введите следующую команду Termux:
su
- Когда будет предложено предоставить Termux права суперпользователя (root), выберите «Grant».
- Затем введите следующую команду для резервного копирования раздела Persist вашего устройства:
dd if=/dev/block/by-name/persist of=/sdcard/persist.img
Раздел с резервной копией (persist.img) будет храниться в корне внутреннего хранилища вашего устройства. Скопируйте файл на свой компьютер и сохраните его.
Шаг 3. Удалите файлы кэша и журнала TWRP из постоянного раздела.
На этом этапе вы должны удалить файлы кеша и журнала, созданные TWRP, которые привели к повреждению данных калибровки датчика в разделе «Сохранение».
Чтобы удалить эти файлы, загрузите и установите приложение Root File Manager на свое устройство. Мы будем использовать Solid Explorer для демонстрации, но вы можете скачать и использовать любой.
После установки перейдите в панель приложений и запустите приложение Solid Explorer. Затем нажмите значок меню в верхнем левом углу и выберите «Корень». После этого приложение предложит вам предоставить права root, поэтому выберите «GRANT».
Затем перейдите в «mnt»> «vendor»> «persist» из корневого каталога и полностью удалите папку «cache». Чтобы сделать это в Solid Explorer, нажмите и удерживайте папку «Кэш», нажмите значок корзины на нижней вкладке и выберите «Удалить».
После удаления папки переходите к следующему шагу.
Шаг 4. Прошивка заводского образа Android Pie / ПЗУ Fastboot
Теперь вам нужно установить Android Pie на свое устройство. По словам нескольких пользователей, которые использовали этот метод, это шаг, который исправит поврежденные данные калибровки в «сохраняемом» разделе. И не волнуйтесь, этот переход с Android 10 на Android Pie является временным.
В зависимости от используемого вами OEM-устройства метод прошивки Android Pie будет отличаться. Поскольку в нашем сценарии использования мы в основном использовали только устройства Google Pixel и Xiaomi Android One, мы будем обсуждать только методы для них. Если у вас другое устройство, мы рекомендуем поискать в базе данных нашего веб-сайта руководство для вашего устройства или посетить форумы XDA-Developer.
- Пользователи Google Pixel: Загрузите образ фабрики Android Pie с эта страница и следуйте инструкциям по прошивке на той же странице. Чтобы предотвратить стирание ваших данных, отредактируйте flash-скрипт и удалите из него флаг «-w».
- Пользователи Xiaomi Mi A3: Загрузите ПЗУ для быстрой загрузки Android Pie отсюда и следуйте предоставленным инструкциям. Чтобы предотвратить удаление данных, используйте только файл flash_all_except_storage.bat.
После прошивки Android Pie позвольте вашему устройству перезагрузиться в ОС. Он будет продолжать загрузку и может закончитьсяНе удается загрузить систему Android‘экран. Это нормально, и нет необходимости выполнять сброс к заводским настройкам (как показано на экране).
Шаг 5. Перепрограммируйте заводской образ Android 10 / ПЗУ для быстрой загрузки.
Теперь последний шаг – перепрошить и обновить ваше устройство до Android 10. Это можно сделать так же, как показано на предыдущем шаге, то есть путем прошивки заводского образа Android 10 / быстрой загрузки ПЗУ на соответствующем устройстве.
После того, как вы установили Android 10, перезагрузите устройство в ОС и проверьте, снова ли начали работать датчики. Многие пользователи Pixel, затронутые этой проблемой, в официальной ветке XDA подтвердили, что этот метод работает. Несколько пользователей Xiaomi Mi A3 также успешно установили датчики на своих устройствах, используя тот же метод.
Сталкивались ли вы с этой проблемой на любом другом устройстве, кроме перечисленных в этом посте? Если да, то пробовали ли вы выполнить приведенные выше инструкции, чтобы исправить ошибку датчиков? Это сработало? Сообщите нам название и модель вашего устройства.
Кредиты: Огромное спасибо участнику XDA nikhilnagia за его исследования и выводы, а также за предоставление правдоподобных решений этой досадной проблемы.
Источник: XDA