我正在按照这篇文章在使用 Expo 构建后自动部署 .ipa 文件:https://blog.expo.io/automating-standalone-expo-app-builds-and-deployments-with-fastlane-exp-和-exptool-9b2f5ad0a2cd
工作正常,但我必须从 Expo 下载 .ipa 文件,然后将其上传到 TestFlight。这需要等待很长时间,因为 Expo 已经构建了 .ipa 文件,我们只需要将它上传到 TestFlight。
当前要部署的脚本是:
// Download .ipa file from Expo build
curl -o app.ipa "$(expo url:ipa --non-interactive)"
// Upload this to TestFlight
fastlane deliver --verbose --ipa "app.ipa" --skip_screenshots --skip_metadata
我试图用 Expo build url 替换 app.ipa(类似于:
https://exp-shell-app-assets.s3.us-west-1.amazonaws.com/ios/myusername/app-bfaf-ca19c79a9c0f-archive.ipa
)
fastlane deliver --verbose --ipa "https://expo-url.ipa" --skip_screenshots --skip_metadata
它会抛出错误,因为
fastlane deliver
总是在URL之前添加当前目录,错误是:
选项“ipa”的错误设置值“https://exp-shell-app-assets.s3.us-west-1.amazonaws.com/ios/myusername/app-bfaf-ca19c79a9c0f-archive.ipa”
[!] 在路径 '/Users/root/project/https://expo-url.ipa' 找不到 ipa 文件
我试过
fastlane pilot upload
并遇到了同样的问题。
谢谢!
链接的资源是针对已弃用的 Expo 构建方法,该方法使用了将近 4 年的工具。 FastLane 可能在编写链接页面后发生了变化,并且可能不再适用于此工作流程。
FastLane 有 12 页发布/更改,因为这个问题被问到,其中之一可能默认 FastLane 到当前工作目录:https://github.com/fastlane/fastlane/releases?page=12
首先,您应该确保捆绑包标识符同时存在于 Apple Developer Center(用于签署应用程序)和 App Store Connect(用于将应用程序推送到商店)中。
比起你只需要实现 Pilot,这是将 ipa 文件推送到 Testflight 的快速通道操作。
fastlane 在您的电脑中上传文件,而不是文件链接... 如果你想建立独立的世博会...我推荐 turtle-cli see tutorial here ... turtle-cli make server localhost 在 /Users/xxx/expo-apps/ 中构建源输出文件 .. 然后你可以复制文件并使用 fastlane 将文件上传到 App Store 和 Google play.