我使用以下命令生成已签名 xcarchive:
xcodebuild -workspace app.xcworkspace -scheme app -configuration 'Release' -sdk iphoneos archive -archivePath build/signed.xcarchive
要构建 unsigned xcarchive,我只需在末尾附加:
CODE_SIGN_IDENTITY="" CODE_SIGNING_REQUIRED=NO CODE_SIGNING_ALLOWED=NO
我很好奇为什么未签名的xcarchive具有332 MB和222 MB的签名?
我发现,例如,签名的xcarchive中的libswiftCore.dylib
仅23.3 MB,而未签名的9 {3}中的CocoaPods
。奇怪。
Alamofire
currentProjectChanged
答案 0 :(得分:0)
在通过使用f3
比较每个构建的输出进行进一步研究之后,我发现对于签名构建opendiff
在每个xcodebuild
上运行bitcode_strip
会大大减小大小。
这就是为什么这两个版本之间存在大小差异的原因。
要在运行未签名的构建dylib
的情况下更具体:
builtin-swiftStdLibTool --copy --verbose ...
,并且没有参数xcodebuild
时,它不会剥离位码。来自构建输出的消息:
忽略--strip-bitcode,因为未传递--sign
因此,这似乎是--sign
的预期行为。