论我是如何不经意间把 Google Play Store 整爆掉的
前言
前几天闲来无事,折腾了一下我的手机,结果没想到第二天起来一看 Google Play 打不开了,而经过了半周断断续续的排查终于找到了原因且修复了问题......
问题发生
因为我 Google Play 的“检查更新”功能在即使有更新的情况下也会告诉我软件已是最新版本,因此我有一个定期去 APKPure 下载最新版 Google Play 安装包并安装的习惯。前几天突然想到该更新了,于是下载了新版并安装了上去,当时并没有啥问题,于是就去忙别的了。结果第二天发现我的 Google Play 打不开了!表现为无限卡 Splash Screen,且应用完全不启动。这可把我急坏了,于是我开始思考昨天我都干了啥......
问题排查
我第一个想到的自然是我更新了 Google Play 的问题,我想到可能是我的 Google Play Service 没有顺带更新导致的问题,于是试着更新了 Google Play Service,然而并没有什么卵用;于是,我又试图清除 Google Play 和 Google Play Service 的 data 和 cache,但是依然没用;后来,我又试着将二者回滚到之前的版本,但是依然没用。
于是,我想到是不是我最近一次 MIUI 系统更新导致的问题,遂重新卡刷了完整版的 MIUI 14.0.26.0,然而还是没用!
这个时候,我就开始考虑是不是我的 Magisk/LSPosed 模块导致的问题了,于是突然想到前几天有安装一个 MIUIGMS 模块,可以为中国大陆用户提供完整版的 GMS 功能;因此试着卸载了该模块,但是依然没有解决问题。
这个时候我就有点小崩溃了,打算摆烂,因为之前手机上的 Chrome 也遇到过类似的情况,但是过上几天突然自己就好了,于是我也就打算等等。
然而几天过后实在忍不住了,遂在一个悲惨的晚上,我开始了逐个排查模块问题。
我先试禁用最近安装的几个 Magisk 模块,发现没用,于是试着禁止所有 Magisk 模块,结果 Google Play 正常启动了!这给了我很大信心,因为至少可以确定是某个模块导致的了。经过进一步的排查,我发现是 LSPosed 导致的问题。一开始我还以为是 LSPosed 自身的问题,结果当我开启 LSPosed,但禁用所有 Xposed 模块以后发现,Google Play 依然可以运行!这就说明是某个 Xposed 模块的问题。于是我一鼓作气,又开始测试 Xposed 模块。再经过五六次重启以后,我终于发现了罪魁祸首...... 是我一直用的好好的,用来向指定 App 隐藏应用列表的 Hide My Applist
模块。
刚开始我百思不得其解,以前用着好好的,怎么突然就不行了呢,然后我突然思绪一闪,想起来了什么......
问题解决
时间回到前几天,我还在测试网站的 Passkey 运行,然而,我发现 Google 因为我没有通过 SafetyNet 测试,拒绝我使用 Passkey 认证功能,这可苦坏了我,于是换掉了早就失效了原版 Universal SafetyNet Fix,换上了一个 MOD 版本,但是依然不行。
于是,我以为是 Google Play 和 Google Play Service 会检测 app list,所以把前两者扔进了 Hide My Applist 里......
想到这个以后,我立刻打开 Hide My Applist,把这俩玩意从隐藏列表里扔了出去,重启手机......
果然,Google Play 恢复了运行......
至此,我终于填上了这个几天前我自己挖出来的大坑。