Arthals' ink

Back

起因是发现 Wakeup 课程表更新后被塞入了一大堆冗余功能(搜题、提示登录等),本来想去官方反馈一下好歹给一个关闭的选项,结果到了 QQ 频道发现此 App 已经被售出并商业化,只能自己设法回退版本。

谷歌搜索之后,得到了如下解决方法,在此记录一下,方便以后使用。

ipatool#

首先,下载 ipatool

brew install ipatool
bash

然后,执行登录:

ipatool auth login -e <your_apple_id_email>
bash

随后输入提示和 2FA 码,完成登录:

9:52PM INF email=<your_apple_id_email> name="Your Name" success=true
bash

使用 search 命令搜索你想要降级的 App:

ipatool search <app_name>
bash

此例中,搜索:

ipatool search Wakeup --format json
bash

得到如下 JSON 结果:

{
    "level": "info",
    "count": 5,
    "apps": [
        {
            "id": 1553402284,
            "bundleID": "com.wakeup.schedule",
            "name": "WakeUp课程表-超级好用的课程表",
            "version": "6.0.80",
            "price": 0
        },
        // ...
    ],
    "time": "2025-11-28T22:21:57+08:00"
}
json

很明显,第一个是我们要的,记录下来他的 bundleID,也即 com.wakeup.schedule

使用 list-versions 命令列出该 App 的所有版本

ipatool list-versions -b com.wakeup.schedule --format json
bash

得到结果如下:

{
    "level": "info",
    "externalVersionIdentifiers": [
        "840461360",
        "842067932",
        "842408761",
        "842433648",
        "842569452",
        "842608243",
        // ...
    ],
    "bundleID": "com.wakeup.schedule",
    "success": true,
    "time": "2025-11-28T22:21:43+08:00"
}
js

你可以直接使用 jq 来对结果进行排序:

ipatool list-versions -b com.wakeup.schedule --format json | jq '.externalVersionIdentifi
ers | sort_by(tonumber) | reverse'
bash

得到结果如下:

[
  "879551069",
  "879389049",
  "878503093",
  "878288344",
  "878285945",
  "877806886",
  "877585055",
  "877474991",
  "877453456",
  "876777068",
  // ...
]
js

当前的最新版本是 6.0.40,最后一个无广告、冗余功能版本是 6.0.32。然而并不是往回数 8 个版本就是 6.0.32,我们可以通过 get-version-metadata 命令来获取实际版本:

ipatool get-version-metadata -b com.wakeup.schedule --external-version-id 877585055
bash

得到结果:

10:36PM INF displayVersion=6.0.32 externalVersionID=877585055 releaseDate=2021-03-14T08:00:00Z success=true
bash

可以看到,877585055 对应的版本才是 6.0.32。

找到这个 externalVersionId 之后,我们可以使用 download 命令下载该版本:

ipatool download -b com.wakeup.schedule --external-version-id 877585055
bash

然后我们就能得到对应的 ipa 安装包文件 com.wakeup.schedule_1553402284_6.0.32.ipa

Apple Configurator#

首先,下载 Apple Configurator,安装后打开。

使用数据线连接到你的 iPhone,完成授权后直接将上一步下载得到的 IPA 文件直接拖入到你的 iPhone 中,即可完成安装。

此时,会提示你「已存在名为“WakeUp课程表”的 App」,选择「替换」即可。

apple-configurator

Reference#

如何降级 iOS / iPadOS App
https://arthals.ink/blog/downgrade-ios-app
Author Arthals
Published at November 29, 2025
Comment seems to stuck. Try to refresh?✨