我有两个基于相同Rake脚本构建的项目,它在内部使用XCode构建。
使用xcodebuild -archivePath
构建它(ARCHIVE成功),然后我用xcodebuild -exportArchive
打包应用程序。
问题是第一个项目成功完成所有步骤,但第二个项目在xcodebuild -exportArchive
失败,因为xcarchive
格式不正确。
我比较了这两个档案,并且由于档案内缺少Info.plist
导致了畸形。
当我手动准备这样的Info.plist
并将其放入xcarchive
时,我就可以毫无问题地打包应用。
为什么XCode构建不会在Info.plist
文件中生成xcarchive
的任何线索?
答案 0 :(得分:1)
答案 1 :(得分:0)
我在 iOS 应用程序项目中也遇到了这个错误。该项目使用链接到框架的 GIT 子模块,作为子项目集成到 Xcode 工作区。
该项目确实正常构建,直到框架子模块升级为使用 XCFramework 而不是普通框架。深入研究这个问题,我终于找到了问题所在:BUILD_LIBRARY_FOR_DISTRIBUTION
和 SKIP_INSTALL
框架构建设置!
如果你设置
BUILD_LIBRARY_FOR_DISTRIBUTION=YES
SKIP_INSTALL=否
为了构建框架,应用程序归档任务将生成一个错误的XCArchive,使其成为Info.plist,没有ApplicationProperties 条目。
您必须确保至少没有 BUILD_LIBRARY_FOR_DISTRIBUTION
构建属性设置为 YES
,并且可能没有 SKIP_INSTALL
设置为 NO
。