Tom*_*ran
6
deployment
command-line-interface
ios
flutter
我想完全理解这个命令以及幕后发生的事情。以下是我到目前为止所了解的一些信息,但不知何故我无法将这些点联系起来:
- 部署 iOS 时,我们需要执行以下步骤: 1. 在发布模式下构建 Flutter 应用程序,这将创建一个 .app 文件/文件夹 2. 存档并签署 .app 文件,将其转换为 .ipa 3. 发送已签名的 .ipa 到应用商店
- Flutter 应用程序可以有 3 种模式:1. 调试 2. 发布 3. 配置文件
- 运行
flutter build ios会创建一个 build/ios 文件夹,包括 Release-iphoneos/Runner.app
- Xcode 在 ~/Library/Developer/Xcode/DerivedData/Runner-... 中创建自己的 .app
现在,问题:
- Xcode 转换成 .ipa 的 build/ios/Release-iphoneos/Runner.app 是什么?我问是因为我知道 Xcode 在 ~/Library/Developer/Xcode/DerivedData 中创建了自己的 .app,所以我不确定 Xcode 是否只是在这里复制 build/ios/Release-iphoneos/Runner.app:~ /Library/Developer/Xcode/DerivedData/ 与否
- 如果我
flutter build ios之前不跑步会怎样?Xcode 会只使用我的应用程序的调试模式吗?如果是这样,它如何删除右上角的调试标志?

- 当我在 Xcode (shift+cmd+K) 中清理我的构建文件夹,然后我存档应用程序时,它仍然会构建一个新的 .app,然后将其转换为 .ipa。这个 .app 是在什么模式下创建的?它是一个发布应用程序吗?如果是这样,为什么需要在
flutter build ios之前运行,为什么不直接从 Xcode 存档?
感谢所有试图为我和其他想知道的人解开这个大谜团的人。