25 мая 2017

Android Pay и root. Обходим ограничения

Привет!

С момента запуска в России платежной системы Android Pay прошло буквально пару дней, но за эти пару дней в сети появилось огромное количество тех, у кого сервис не работает. Причем у части из этих «счастливчиков» выполнены все требования, которые Google в целях безопасности предъявляет к устройству, на котором планируется использования Android Pay. Это неприятно, но неудивительно, так как практически ни один запуск сервисов подобного масштаба не обходится  без шероховатостей, которые должны быть устранены компанией в самое ближайшее время (мы в это верим).

Совсем другое дело — несоблюдение условий:

  • прошивка должна быть стоковой и содержать стоковое ядро и recovery.
  • на устройстве должен отсутствовать корневой доступ (root).

При несоблюдении этих условий, запуск Android Pay не состоится и вам предстанет такая картина:

Если же вы хотите использовать Android Pay, но при этом не хотите отказываться от кастомной прошивки и прав суперпользователя (они же root), то пытливыми умами уже придуман способ обойти это ограничения. Необходимо скрыть от Androig Pay наличие root (не работает на устройствах линейки Pixel).

Сделать это можно с помощью утилиты Magisk.

Для использования этой утилиты:

  1. У вас должен быть установлен Android 5.0 и выше на стоковой прошивке. Если у вас кастомная прошивка, то необходимо отредактировать строки ro.build.description и ro.build.fingerprint в файле /system/build.prop, чтоб совпадали с официальной версией прошивки вашего устройства. Если этого не сделать, то скорее всего программа не пройдет проверку SafetyNet и вы увидите такую картину:

  1. Должен быть разблокирован загрузчик (позволяет устанавливать кастомное recovery), и если это не так, разблокируйте его, обратившись, например на форум 4pda, в тему прошивки своего устройства.
  2. На устройстве должны быть получены права суперпользователя либо с помощью оригинального несистемного SuperSU, либо с помощью MagiskSU.

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

Проще всего удалить неподдерживаемую версию root можно используя специальный скрипт, который можно найти на форуме 4pda, либо на сайте-первоисточнике xda-developers.com.

Данный скрипт поддерживает удаление следующих версий root:

  • SuperSU System
  • SuperSU Systemless
  • Koush’s SuperUser
  • phh’s Superuser
  • ROM su binaries

Чтобы применить скрипт, вам необходимо сохранить скачанный выше архивный файл в память смартфона, затем зайти в режим recovery (смотри в теме прошивки своего телефона), и произвести установку данного файла с помощью пункта «instal zip from «место сохранения файла».

После этого можно

  1. Устанавливаете/обновляете Magisk Manager из Google Play или отсюда: Прикрепленный файлMagiskManager-v4.3.3.apk ( 3,44 МБ )

  1. Устанавливаете/обновляете Magisk из самой программы Magisk Manager-a, перезагружаете девайс.


После этого в MagiskManager должна отображаться следующая картина:

Необходимо пройти проверку профиля CTS (SafetyNet), для этого необходимо тапнуть на серую область снизу. В случае успешной проверки у вас отобразится следующее:

В случае, если не получится установить Magisk из приложения, то можно перезагрузить устройство в режиме recovery и выполнить установку скачанного zip-файла Magisk-v12.0.zip  из папки программы.

Когда утилита Magisk успешно установлена на ваше устройство, делаем то, для чего она и была установлена — скрываем root от Android Pay. Для этого необходимо запустить Magisk Manager и в настройках активировать пункт Magisk Hide. Затем перезагрузить устройство.

Затем снова открываем Magisk Manager. Если все сделано правильно в боковом меню появится раздел Magisk Hide. После его выбора на экране откроется список приложений и сервисов, где нужно найти и активировать Android Pay.

Отмечаем в списке Android Pay, перезагружаемся и наслаждаемся работающим сервисом. который не видит root.

имейте ввиду, у многих Magisk Hide вызывает повышенный расход батареи. Такой эффект часто встречается на устройствах Xiaomi.

Более подробную инструкцию по установке можно найти в теме приложения на форуме 4pda.

Читайте также