1、xcrun altool 命令环境检查
xcrun altool 工具是苹果官方的工具,包含在 Command Line Tools 中,因此首先得在电脑上安装xcode-select
xcode-select --install
如果电脑上安装了多个 Xcode ,那么就有多个版本,可以根据自身情况选择具体的版本,配置如下
2、xcrun altool 能做什么
安装 xcode-select 之后,可以通过命令
xcrun altool --help
检查xcrun altool 是否使用,若没什么问题会看到 xcrun altool 的功能命令以及相关说明
其中有一条是 upload-app
命令
altool --upload-app -f <file> -t <platform> {-u <username> [-p <password>] | --apiKey <api_key> --apiIssuer <issuer_id>}
这条命令就是上传 ipa 到 App Store Connect 的命令,具体参数说明如下:
-f
: ipa 文件路径,要绝对路径
-t
: 上传的平台:iOS、macOS
-u <username>
: 苹果开发者账号
-p <password>
: 苹果开发者账号密码
--apiKey
: 密钥 ID
--apiIssuer
: Issuer ID ,该 id 是 苹果开发者 App管理后台生成的,用于认证令牌的发放者
上面的后面四个参数是两两一组,用 -u
那就一定要用 -p
; 使用 --apiKey
那就一定要用 --apiIssuer
这里使用 --apiKey
和 --apiIssuer
这组,这组参数的值通过 App Store Connect 中的 「用户与访问」– 「密钥」– 「App Store Connect API」创建获取
到了改密钥页面,点击 「+」即可创建一个密钥,同时可以存在50个密钥,但是 Issuer ID 只有一个
3、通过 xcrun altool 上传 ipa
命令参数值准备好了,就可以写脚本了,其实这个脚本很简单,就是一行代码
# ipa 路径
IPA_FILE_PATH="$1"
xcrun altool --upload-app -f "$IPA_FILE_PATH" -t iOS --apiKey "<密钥 ID>" --apiIssuer "<Issuer ID>"
脚本写好了,执行脚本试一下是否可用:
执行后发现报错,错误信息提示 Failed to load AuthKey file
,查找的目录:当下脚本所在的目录
、~/private-keys
、~/.private_keys
、~/.appstoreconnect/private_keys
,这几个目录都没有查找到,说明还需要在电脑上配置一个 AuthKey 依赖文件,并将其放在上面这几个目录中的其中一个,根据该提示, AuthKey 其实就是我们上一步创建的密钥,以 .p8
后缀保存的文件
4、配置 AuthKey的 p8 文件
-
下载密钥文件
登录 App Store Connect,进入「用户与访问」 -- 「密钥」
页面,在密钥右边有一个 「下载 API 密钥」
的按钮,下载后就是 AuthKey_<密钥 ID>.p8
文件
-
将
AuthKey_<密钥 ID>.p8文件放到
~/.private_keys
目录如果没有
~/.private_keys
目录,新建一个,将AuthKey_<密钥 ID>.p8
文件拷贝到该目录
以上都处理好之后,再运行脚本
可以看到输出是正在连接 苹果服务器了,说明脚本在校验没问题了,连接成功就会将 ipa 上传到 App Store Connect
若上传成功最终会提示 UPLOAD SUCCEEDED
登录 App Store Connect —「我的 App」
就可以看到刚刚上传的构建包了
PS: 有了打包脚本,有了重签脚本,还有了上传脚本,下一步应该可以整一下打包后的上传管理后台,内部使用的 ipa 托管平台的闭环就可以建设起来了。
原文始发于微信公众号(三万之一):写个脚本上传 ipa
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/231220.html