5分钟搞定:跨平台 IPA 下载完整指南——用 ipatool 从 App Store 抓取 iOS 应用包
【免费下载链接】ipatoolCommand-line tool that allows you to search for iOS, iPadOS, tvOS, watchOS, visionOS, and macOS apps on the App Store, and download .ipa or macOS .pkg app packages.项目地址: https://gitcode.com/GitHub_Trending/ip/ipatool
想在一台 Windows、Linux 或 macOS 机器上拿到某个 iOS 应用的 IPA 包?在手机上操作实在繁琐。ipatool 是一个用 Go 编写的跨平台命令行工具,让你直接搜索 App Store 应用包并完成 IPA 下载,全程无需真机。它适合需要抓取应用包做测试、备份,或想在 CI 里自动获取 IPA 的开发者与测试人员。
📥 在你自己的系统上安装 ipatool
三个平台的命令完全一致,差别只在安装方式和凭据存放位置。下面分别说明。
Windows 下编译安装 ipatool
用 Go 1.25 及以上工具链从源码编译最通用:
git clone https://gitcode.com/GitHub_Trending/ip/ipatool cd ipatool go build -o ipatool把生成的可执行文件放进PATH即可调用。运行环境要求 Windows 10 及以上;凭据存放在 Windows 加密凭据存储中,一般无需额外依赖。
Linux 下编译安装 ipatool
编译命令与上面相同。密钥环是 Linux 的硬性依赖,先装好对应发行版的开发库:
sudo apt-get install libsecret-1-dev # Debian / Ubuntu sudo dnf install libsecret-devel # Fedora系统要求为受支持的 Linux 发行版,凭据由系统密钥环(依赖 libsecret 与 GNOME Keyring)管理。
macOS 下安装 ipatool
macOS 最省事,直接用 Homebrew:
brew install ipatool也可以源码编译。系统要求 macOS,凭据由系统钥匙串(Keychain)自动托管,无需额外配置。
三者差异一张表看清:
| 对比项 | Windows | Linux | macOS |
|---|---|---|---|
| 安装方式 | go build源码编译 | go build源码编译 | brew install ipatool或源码编译 |
| 系统要求 | Windows 10+ | 受支持的 Linux 发行版 | macOS |
| 密钥存放位置 | Windows 加密凭据存储 | 系统密钥环(libsecret / GNOME Keyring) | 系统钥匙串(Keychain) |
| 额外依赖 | 一般无 | libsecret 开发库、密钥环守护进程 | 无 |
🔐 登录 App Store
搜索与下载都要经过 App Store 的鉴权流程,因此必须先登录一次。命令如下:
ipatool auth login -e 你的AppleID邮箱按提示输入密码即可;-e指定 Apple ID,交互模式下密码会隐藏输入。登录后用下面命令确认账号状态:
ipatool auth info两步验证:若账号开启了双重认证,首次在新客户端登录会要求输入 6 位验证码。交互运行时直接按提示输入即可;验证码可在 macOS「设置 → Apple 账号 → 登录与安全」里通过「获取验证码」拿到,见上方截图。
在 CI 等非交互环境里,用--non-interactive并显式传入凭据与验证码:
ipatool --non-interactive auth login -e 邮箱 -p 密码 --auth-code 6位验证码📄 一个应用从搜索到下载的完整示例
以微信(bundle IDcom.tencent.xin)为例,把完整流程串一遍。
1. 搜索应用:不知道 bundle ID 时先按关键词搜。-l控制返回条数(默认 5),--platform可限定平台。
ipatool search "微信" -l 5 ipatool search "微信" --platform iphone2. 查看可用版本:确认有哪些历史版本并拿到external-version-id。-b(bundle ID)与-i(app ID)二选一,-b优先级更高。
ipatool list-versions -b com.tencent.xin3. 下载 IPA:不指定版本时默认下载最新版;-o指定落盘路径,--platform指定目标平台(iOS 用iphone)。
# 下载最新版 ipatool download -b com.tencent.xin -o ~/Downloads/wechat.ipa # 下载指定版本 ipatool download -b com.tencent.xin --external-version-id 1677862400 -o ~/Downloads/wechat_v8.0.22.ipa4. 需要时获取授权:有些应用(尤其账号已购买过的)需要先拿下载许可。可单独执行授权,或在下载时加--purchase自动获取:
ipatool purchase -b com.tencent.xin ipatool download -b com.tencent.xin --purchase -o ~/Downloads/wechat.ipa底层接口实现可参考 pkg/appstore/ 目录。
⚠️ 报错时怎么办
现象:命令报认证错误。原因:本地保存的凭据已过期或被吊销,App Store 不再接受旧会话。解决命令:先吊销旧凭据,再重新登录。
ipatool auth revoke ipatool auth login -e 你的AppleID邮箱现象:登录时提示需要 2FA 验证码。原因:Apple ID 开启了双重认证,首次在新客户端登录必须校验一次。解决命令:交互式直接输入;非交互环境用--auth-code传入。
ipatool --non-interactive auth login -e 邮箱 -p 密码 --auth-code 6位验证码现象:下载时提示需要 license。原因:账号还没有该应用的下载许可,App Store 拒绝直接分发应用包。解决命令:给下载加--purchase,或先单独执行一次授权。
ipatool download -b com.tencent.xin --purchase -o ~/Downloads/wechat.ipa现象:下载速度很慢。原因:请求命中的 App Store 节点较远,或账号缺少下载许可触发反复重试。解决命令:加--purchase避免许可重试,并用--verbose查看进度卡在哪一步。
ipatool --verbose download -b com.tencent.xin --purchase -o ~/Downloads/wechat.ipa🚀 效率提升:批量下载与流水线集成
备份多个应用时,可写个循环脚本一次搞定。下面脚本依次下载列表中的应用并自动获取授权,可直接保存为~/bulk_download.sh:
#!/bin/bash APPS=( "com.tencent.xin" # 微信 "com.apple.mobilesafari" # Safari ) for app in "${APPS[@]}"; do ipatool download -b "$app" --purchase -o ~/ipa_downloads/"$app".ipa done它是纯命令行工具,也能直接塞进 Jenkins 等流水线,例如在构建阶段自动拉取 IPA:
stage('Download IPA') { steps { // 非交互环境需显式传入凭据与 2FA 验证码 sh 'ipatool --non-interactive auth login -e $APPLE_ID -p $APPLE_PASSWORD --auth-code $TWO_FA' sh 'ipatool --non-interactive download -b com.example.app -o ./app.ipa' } }命令速查与后续
一句话概括:ipatool 把「登录 App Store → 搜索 → 查版本 → 下载 / 授权」整合成同一套命令,让你在任意一台 Windows、Linux 或 macOS 机器上都能用同样的方式拿到 iOS 应用包。
| 命令 | 功能 | 最简示例 |
|---|---|---|
ipatool auth login | 登录 App Store | ipatool auth login -e 邮箱 |
ipatool auth info | 查看当前登录信息 | ipatool auth info |
ipatool auth revoke | 吊销认证凭据 | ipatool auth revoke |
ipatool search | 搜索应用 | ipatool search "微信" -l 5 |
ipatool list-versions | 列出版本 | ipatool list-versions -b com.tencent.xin |
ipatool download | 下载 IPA / pkg | ipatool download -b com.tencent.xin -o wechat.ipa |
ipatool purchase | 获取应用授权 | ipatool purchase -b com.tencent.xin |
ipatool list-purchases | 列出账号已购应用 | ipatool list-purchases |
建议用ipatool --version检查当前版本,并定期更新源码以获取新功能。遇到问题可通过项目 issue 反馈,也欢迎直接参与代码贡献;涉及密钥存储的实现可查看 pkg/keychain/ 目录。
【免费下载链接】ipatoolCommand-line tool that allows you to search for iOS, iPadOS, tvOS, watchOS, visionOS, and macOS apps on the App Store, and download .ipa or macOS .pkg app packages.项目地址: https://gitcode.com/GitHub_Trending/ip/ipatool
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考