是否可以将使用开发证书签名的.ipa文件重新签名到企业证书?
背景:我的客户端需要.ipa文件。他拥有他不会与我们分享的企业证书。我的想法是,我使用自己的开发证书提供.ipa文件并将其交付给他。他使用他的企业证书辞职,因此他可以在他的内部应用程序商店中部署他的应用程序。
目前我的.ipa文件已签名,我已准备好提交文件,但我必须确定它是可能的。
我读了this文章,但假设供应配置文件是Adhoc或企业分发..这不是我的情况,我不知道它是否重要。
在构建之后可以重新签名ipa。
要为企业或临时分发重新签名ipa,您可以按照以下简单步骤操作:
要使用终端重新授权应用,您可以按照以下步骤操作:
unzip MyApp.ipa
rm -rf Payload/MyApp.app/_CodeSignature/
Ad-Hoc
或enterprise
配置文件复制到有效负载的embedded
配置文件中。
cp ~/Desktop/MyAdHoc.mobileprovision Payload/MyApp.app/embedded.mobileprovision
.app
或Ad-hoc
证书的相关代码签名标识重新签名Enterprise
文件,该证书可在Keychain中找到。
codesign -f -s "iPhone Distribution: Code signing Certificate for Enterprise or Ad-hoc app" Payload/MyApp.app
ipa
的名字。
zip -qr MyApp_Resigned.ipa Payload/
不要将开发二进制文件用于生产。
您不应将开发二进制文件重新签名为企业/生产二进制文件。开发二进制文件通常包含许多额外的东西,可以调试和运行所有这些工具,帮助我们改进应用程序。这些使二进制文件更大,更慢,使用更多功率并产生安全风险。
要回答这个问题,您可以做的最简单的事情是提供一个未签名的应用程序,您的客户可以自己签名。
从那里你可以
要么
这对您来说不那么重要,并且可以防止您遇到任何陷阱,例如意外地向他们发送您为开发而构建的二进制文件。
在Doc。中安装
用法:
1)fastlane init
2)fastlane/Fastlane(file)
default_platform(:ios)
platform :ios do
desc "Resigning Current Provision"
lane :resigner do
resign(
ipa: "location/appName.ipa",
signing_identity: "iPhone Distribution: Bbalbalbalbal.xxxxx",
provisioning_profile: "location/xxxxx.mobileprovision",
)
# add actions here: https://docs.fastlane.tools/actions
end
end
3)运行fastlane ios resigner