由于某些众所周知的原因,在一个华丽的响指过后,2020年12月31日,App Store 中国区上数万游戏惨遭不测,离开商店,留在了我们的记忆里。
连同消失不见的还有嘤鸽瑞斯扫描器,这对白军大胜利的阿根特们来说是不可接受的。所幸,在另外一个次元的 App Store,扫描器还好好地活着,那么如何让另外一个次元的扫描器装到我们手机上呢?
从万能的 Internet 上,我们了解到了三种办法:
- 手机 App Store 登录外区账号获取更新。
- 已装有 ingress 需更新的可参考此方案:第一步:在设置→App Store→自动下载的项目中打开更新,第二步:进入设置→通用→iPhone 存储空间找到 ingress,点击卸载 App,再点击重新安装 App,更新完成。
- 电脑安装 iMazing,并登录外区账号下载 ingress 安装包,可以安装 iMazing 并免费试用来安装游戏。
上面三种办法都很繁琐,要么就得切号、要么就得安装过、要么就得手机连电脑。那有没有优雅的办法来安装扫描器呢?
当当当当,这就是本文要介绍的办法,网页在线安装!
这个方法的核心思想是在 VPS 上开一个静态的网站或者容器,通过这个网站来实现任意 App 的在线安装。静态网站这个方法比容器的简单很多,而且对 VPS 性能需求更低。前置的必须安装流程如下:
- 将 VPS 重装为全新的系统(Ubuntu、Centos、Debian 等等都可以)
- 根据 宝塔Linux面板安装教程 将宝塔面板安装在您的 VPS 上。
- 安装成功进入面板后,根据喜好安装 LNMP 或 LAMP。(我更喜欢 LNMP)
现在开始分出两种办法,一种是简单的静态网页,一种是较为复杂的容器(如果用宝塔进行容器管理,要求 VPS 的内存不低于 768MB)本文将介绍通过静态网页来实现 ingress 的在线安装,其他的软件也可以套用该方法。
静态网页法
先在 DNS 服务商上将你的域名指向你的服务器,然后在宝塔面板新增一个站点。

然后我们在浏览器打开地址测试一下

下一步我们为网站开启 SSL 加密。

点申请后稍微等一小会

能看到这个界面就说明你的 SSL 证书申请成功了。这时候记得顺手把「强制HTTPS」开启。

这里开始,我们需要对 SSL 的配置进行小修改,才能保证之后的使用。从 iOS 14 开始,苹果更新了 ATS(App Transport Security)规则,开启了 TLSv1.1 的 SSL 不再合规。我们在开启 SSL 后,进入配置文件,把图中的 TLSv1.1 (别忘了后面还有一个空格)删除,保存即可。

我把这个静态网站的源代码丢 Github 上了,很遗憾,我已经找不到最早的作者是哪位了。。
在宝塔切换到文件管理器,前往网站的根目录,将根目录内的文件除了「.user.ini」外全部删除。

然后点击远程下载

添加这个链接进行下载 https://github.com/Thregren/SR_online_installer/archive/main.zip

然后啪的一下就下好了,很快啊(主要是比较小,才 81.27KB)
然后右键对这个 main.zip 进行解压,我们得到了一个「SR_online_installer-main」文件夹。

我们将 main.zip 删除,然后将「SR_online_installer-main」文件夹内的文件剪切到网站根目录,一切操作无误的话,网站根目录应该是现在这个样子。

现在我们可以将「SR_online_installer-main」文件夹删除。
现在我们打开测试的网站,网站已经可以正常地显示,你已经成功了大半,接下来我们修改网站的代码。

首先我们得有一个购买了 ingress 的外区账号,然后通过 iMazing 来下载 ipa 安装包(可以参考这个教程)。
获取到安装包后,我们将安装包上传到网站的根目录,并将其重命名为「ingress.ipa」

我们先修改根目录下的「ipa.plist」文件,
在宝塔面板内对「ipa.plist」右键打开编辑。将13行的网址替换为你当前站点的地址(不要忘了有 https)(19行的包名是 ingress 的,如果需要安装其他 App,需要提取包名,可以参考这里)

接下来我们修改网站根目录下的「index.html」文件。
将56行的网址替换为您当前站点的地址(不要忘了有 https)并将你的外区账号密码填入81、82行

现在,你可以在手机上打开这个站点,享受便捷的在线安装了!安装后首次打开需要输入购买这个 app 的账号密码,输入网页上提示的账号密码即可。
容器法
本文对这个方法不做详细说明,在这里丢上网上大佬造的轮子 ipa-server。玩得转容器的大佬们应该很快就能让它跑起来,这里我就提几个关键点。
- 如果用宝塔内置的 Docker 管理器,那么 VPS 的内存不能低于 768MB。
- 不能直接通过 IP 地址访问 ipa-server 容器,这样在线安装器由于无法满足 ATS 要求导致无法在手机上安装程序。直接用一个域名反向代理到这个容器,并开启 SSL 就可以解决。
- ATS 要求的最低 SSL 协议为 TLSv1.2,如果站点支持 TLSv1.1 以及更早的协议,那么将无法满足要求。通过修改 Nginx 配置文件可以解决。
本人不才,只能通过网上现有的轮子,为大家做一点微小的贡献,如果大家有问题,可以在 TG 上和我讨论 @Thregren,谢谢大家!