Command-line tool that allows searching and downloading app packages (known as ipa files) from the iOS App Store
以下内容由 AI 翻译,如有问题请 点此提交 issue 反馈
IPATool
ipatool 是一款命令行工具,可帮助您在 App Store 上搜索 iOS 应用,并下载应用安装包(即 ipa 文件)。

要求
- 受支持的操作系统(Windows、Linux 或 macOS)。
- 已设置用于访问 App Store 的 Apple ID。
安装
手动安装
您可以从 GitHub 发布页面 获取 ipatool 的最新版本。
包管理器(macOS)
您可以使用 Homebrew 安装 ipatool。
$ brew install ipatool
使用方法
若要通过 App Store 进行身份验证,请使用 auth 命令。
Authenticate with the App Store
Usage:
ipatool auth [command]
Available Commands:
info Show current account info
login Login to the App Store
revoke Revoke your App Store credentials
Flags:
-h, --help help for auth
Global Flags:
--format format sets output format for command; can be 'text', 'json' (default text)
--non-interactive run in non-interactive session
--verbose enables verbose logs
Use "ipatool auth [command] --help" for more information about a command.
要在 App Store 上搜索应用,请使用 search 命令。
Search for iOS and tvOS apps available on the App Store
Usage:
ipatool search <term> [flags]
Flags:
-h, --help help for search
-l, --limit int maximum amount of search results to retrieve (default 5)
--platform string Platform to search: iphone, ipad, or appletv
Global Flags:
--format format sets output format for command; can be 'text', 'json' (default text)
--non-interactive run in non-interactive session
--verbose enables verbose logs
要获取应用的许可,请使用 purchase 命令。
Obtain a license for the app from the App Store
Usage:
ipatool purchase [flags]
Flags:
-b, --bundle-identifier string Bundle identifier of the target iOS app (required)
-h, --help help for purchase
Global Flags:
--format format sets output format for command; can be 'text', 'json' (default text)
--non-interactive run in non-interactive session
--verbose enables verbose logs
要获取可下载的应用版本列表,请使用 list-versions 命令。
List the available versions of an iOS app
Usage:
ipatool list-versions [flags]
Flags:
-i, --app-id int ID of the target iOS app (required)
-b, --bundle-identifier string The bundle identifier of the target iOS app (overrides the app ID)
-h, --help help for list-versions
Global Flags:
--format format sets output format for command; can be 'text', 'json' (default text)
--keychain-passphrase string passphrase for unlocking keychain
--non-interactive run in non-interactive session
--verbose enables verbose logs
要下载 ipa 文件的副本,请使用 download 命令。
Download (encrypted) iOS and tvOS app packages from the App Store
Usage:
ipatool download [flags]
Flags:
-i, --app-id int ID of the target iOS app (required)
-b, --bundle-identifier string The bundle identifier of the target iOS app (overrides the app ID)
--external-version-id string External version identifier of the target iOS app (defaults to latest version when not specified)
-h, --help help for download
-o, --output string The destination path of the downloaded app package
--platform string Platform to download for: iphone, ipad, or appletv
--purchase Obtain a license for the app if needed
Global Flags:
--format format sets output format for command; can be 'text', 'json' (default text)
--keychain-passphrase string passphrase for unlocking keychain
--non-interactive run in non-interactive session
--verbose enables verbose logs
要解析由 list-versions 命令返回的外部版本标识符,请使用 get-version-metadata 命令。
Retrieves the metadata for a specific version of an app
Usage:
ipatool get-version-metadata [flags]
Flags:
-i, --app-id int ID of the target iOS app (required)
-b, --bundle-identifier string The bundle identifier of the target iOS app (overrides the app ID)
--external-version-id string External version identifier of the target iOS app (required)
-h, --help help for get-version-metadata
Global Flags:
--format format sets output format for command; can be 'text', 'json' (default text)
--keychain-passphrase string passphrase for unlocking keychain
--non-interactive run in non-interactive session
--verbose enables verbose logs
注意: 该工具默认以交互模式运行。若在自动化环境中运行,请使用 --non-interactive 标志。
编译
可使用 Go 工具链编译此工具。
$ go build -o ipatool
可以使用以下命令执行单元测试。
$ go generate github.com/majd/ipatool/...
$ go test -v github.com/majd/ipatool/...
许可协议
ipatool 根据 MIT 许可协议 发布。