点击关注我的Telegram群组和微信公众号

MENU

[2021年]在Root和启用EdXposed的设备上通过SafetyNet测试使用NFC GPay

2021 年 04 月 16 日 • 阅读: 4059 • 分享,教程

2021/06 更新

在2021/06的SafetyNet更新中,EdXposed无法通过SafetyNet检测,需要更换为LSPosed

在2019年年底写了一篇在 Root 和启用 Xposed 的设备上通过 SafetyNet 并使用 Google NFC Pay,但在2020年谷歌通过后台热更新为Google Pay增加了额外的验证,导致即使设备通过了SafetyNet也不一定能通过Google Pay的安全验证。 今年三月新的方法出现,最近按照新的安全要求重新进行了设置终于让我用回了GPay,特此分享过程OωO

  1. 目前Google Pay处于向GPay过渡时期,两个应用均可使用且数据互通,在任意一个应用中添加银行卡效果是一样的
  2. 现在检测是否通过Google隐藏的安全检测其实也简单了,以前要实际使用NFC Pay触发失败才知道没通过安全检测,现在不符合安全要求的设备直接不允许使用GPay应用
  3. 和2019年版教程有明显不一样的地方会用橙色字体高亮
  4. 每当涉及环境或模块安装/卸载时,应及时按提示重启设备,本文不再描述

设备环境

  • OnePlus 7 Pro/ GM1917
  • Android Version: 10
  • Kernel Version: 4.14.117-perf+
  • Build Number: Oxygen OS 10.3.8.GM21AA

软件环境

  • Magisk Manager 22.1 (22100)(20)
  • Magisk 22.1 (22100)
  • EdXposed v93.0
  • EdXposed Framework v0.5.2.2_4683-master_4683(YAHFA)

Magisk 设置

  • 进入设置,启用 Magisk Hide
  • 模块列表中下载并启用 MagiskHide Props Config,这个模块在提示有更新时应及时更新
  • 设置中启用自定义 Magisk Manager 包名

    • 一定不要使用特别简短或者简单的单词作为包名,这个影响比较大
  • 进入 Superuser 标签页,随后进入 MagiskHide 功能区,添加Google Play服务作为隐藏目标

    • 其它相关的Google应用你想加就加,不加在此处没影响
  • 如果你安装了SafetyPatchFDE.AI模块,请卸载这两个会产生冲突的模块
  • 模块列表中下载并启用Universal SafetyNet Fix
  • 模块列表中下载并启用SQLite for ARM aarch64 devices

    • 正如这个模块名所述一样,这个模块仅适用于当前流行的ARM aarch64架构的设备。如果你的设备不是aarch64可以在Github EXALAB/sqlite3-android中找到对应版本的SQLite二进制文件编译安装

EdXposed 设置

  • 在最新的EdXposed版本中,Xposed黑名单模式改名为Xposed Hide且默认开启(在设置中可以将黑名单模式换成白名单模式)
  • 在侧栏进入Xposed Hide
  • Goolge Play Services拉入黑名单

    • 如果怕自己未来手抖把这一黑名单给撤了,可以在设置中启用Pass SafetyNet
    • Pass SafetyNet被启用时,谷歌服务模块将被强制拉入黑名单,你在Xposed Hide中将无法修改相关的配置。同时,如果未来你需要将谷歌服务模块撤出黑名单,你需要首先关闭Pass SafetyNet然后在Xposed Hide再取消勾选相关应用。

此时...

  • 重启设备,确保一切设置均已生效
  • 打开Magisk,检查SafetyNet状态
  • 此时你应该已经通过SafetyNet检测

    • ctsProfile值应为PassevalType值为Basic

Google Play 设置

  • 开启飞行模式
  • 在手机应用设置中找到Play商店和谷歌服务框架 (Google PlayGoogle Play Services)
  • 清除这两个数据的全部数据(你的谷歌帐号不会因此退出)
  • 重启手机后关闭飞行模式
  • 打开Google Play,按照正常的流程设置即可(记得关自动更新)
  • 此时在Google Play设置的最底下,Google Protect certification的值应显示为Device is certified

    • 如果Google Protect certification的值显示没有通过检测,自行检查之前的步骤有何疏漏
    • 如果设置中没有Google Protect certification这一项,需要等待设备检测完成,这一速度取决于你的设备性能和网络性能,一般不超过10分钟

Google Protect certification

Magisk 补丁模块

  • 我们需要添加一个名为GPay-SQLite-Fix的Magisk模块

  • 在Magisk Manager中导入这个模块包

    • 按照提示使用音量键以作为确认
    • 出现相关提示后使用音量键来确认清除Google Pay的本地数据
    • 部分储存于本地的会员卡信息会因此被清除,请注意备份!

Magisk 补丁模块

  • 安装完成后不要重启
  • 此时在Google Pay或GPay中应该已经可以添加银行卡并启用NFC支付了

NFC

最后编辑于: 2021 年 07 月 02 日
返回文章列表 文章二维码 打赏
本页链接的二维码
打赏二维码