Из-за новой системы SafeNet от Android некоторые приложения теперь могут блокировать укоренившихся пользователей или не позволять вам вообще обращаться к ним — но по крайней мере на данный момент все еще существуют ограничения.
Вы можете передать большинство проверок SafetyNet с помощью Magisk и без системного корня, но в некоторых случаях тестовый комплект Google Compatibility Test Suite (CTS) остается препятствием.
Если это произошло с вами, существует ряд потенциальных причин: от несовместимых приложений управления корнями до проблем с Magisk Hide.
Прежде чем вы начнете
В этом руководстве предполагается, что вы уже установили Magisk, который представляет собой бессистемную утилиту root, которая может скрыть свое присутствие в SafetyNet.
Когда дело доходит до фактической проверки вашего статуса SafetyNet, самый простой способ сделать это — открыть приложение Magisk Manager и нажать кнопку «Проверка безопасности» в нижней части экрана.
Проверка статуса SafetyNet в Magisk Manager.
Шаг 1: Избавьтесь от SuperSU и используйте MagiskSU с Magisk Hide
Наиболее вероятной причиной несоответствия профиля CTS является приложение для управления корнями, которое не скрывает себя от SafetyNet.
Скорее всего, вы изначально использовали ваш телефон, используя SuperSU ZIP или CF Auto Root, которые устанавливают SuperSU в качестве приложения для управления корнем по умолчанию.
Поэтому, если это является причиной ваших проблем с CTS, вам нужно будет удалить бинарные файлы SuperSU и заменить их встроенным корневым приложением Magisk.
После того, как вы это сделали, убедитесь, что опция «Магическая Hide» включена в вашем приложении «Магистр».
Для этого перейдите в навигационное меню в приложении Magisk Manager и выберите «Скрыть Magisk». Здесь может быть полезно отметить галочки рядом с Google Play Store и Google Services Framework, а также с любым другим приложением
Шаг 2: все еще нет хорошего?
Если вышеупомянутое руководство не устранило проблемы несоответствия профиля CTS, и вы уверены, что вы отменили какие-либо системные моды, возможно, что у вас все еще есть несколько бит данных, оставшихся от SuperSU.
Поэтому, чтобы убедиться, что вы полностью уничтожили SuperSU и его двоичные файлы, вы можете использовать flashable ZIP, созданный разработчиком osm0sis.
- Загрузите unSU, чтобы полностью удалить SuperSU (.zip)
Оттуда нажмите кнопку «Установить» в главном меню TWRP, затем перейдите в папку «Загрузить» и выберите UPDATE-unSU-signed.zip.
Шаг 3: Измените SELinux на принуждение
Если вы все еще застряли, этот следующий шаг довольно прост, хотя это применимо только в том случае, если вы ранее использовали приложение, чтобы установить режим SELinux в «Permissive». «Magisk пытается скрыть ваш статус SELinux от SafetyNet
Итак, откройте какое-либо приложение SELinux mode changer, которое вы использовали для установки режима «Permissive», в первую очередь, затем переключите настройку на «Enforcing» и перезагрузитесь.
Шаг 4: Отключение USB-отладки
По какой-то странной причине довольно распространенная причина проблем SafetyNet с Magisk — это настройка «USB Debugging» в настройках разработчика.
Шаг 5: Пользовательское ПЗУ?
Как я уже упоминал ранее, CTS означает «Комплект тестирования совместимости». Это процесс, который Google использует для проверки того, что устройство и его прошивка соответствуют стандартам сертификации, и, проще говоря, пользовательский диск никогда официально не пройдет этот тест.
Тем не менее, некоторые пользовательские ядра могут помочь с этой проблемой.
Для некоторых пользовательских ПЗУ (особенно ОС Lineage) эта опция может не полностью решить проблему.
Наконец, для пользователей Xiaomi, которые запускают пользовательский ПЗУ, есть еще один вариант.
Шаг 6: Обращайтесь к другим потенциальным проблемам
Прежде чем принять ядерный подход, описанный в шаге 8 ниже, существует несколько менее распространенных проблем, которые могут привести к сбою SafetyNet на основе несоответствия профиля CTS, поэтому они заслуживают внимания.
Во-первых, возможно, что демон Magisk Hide не запускается правильно на вашем телефоне.
Некоторые пользователи также сообщили, что опции Magisk «Systemless hosts» и «BusyBox» заставили их столкнуться с проблемами с SafetyNet.
Шаг 7: Включить режим Core Core
Как последнее усилие, вы можете попробовать включить параметр «Только основной режим» в настройках Magisk Manager.
Возможно, это не идеальное решение, но после того, как Google обновил SafetyNet для обнаружения Magisk, включение режима «Только Core» кажется единственным исправлением, которое помогает большинству пользователей проходить тест CTS.
Шаг 8: Если все остальное не работает, начните с нуля
Мы сохранили этот шаг для последнего, потому что это универсальное решение, но это больная пилюля для глотания.
Процесс восстановления вашей прошивки будет варьироваться в зависимости от устройства, но если ваш телефон имеет меню загрузчика, которое поддерживает команды Fastboot, мы рассмотрели этот процесс в этом руководстве.
Итак, вы наконец решили проблемы с несоответствием профиля CTS?