码迷,mamicode.com
首页 > 其他好文 > 详细

重新签名IPA ( iPhone )

时间:2015-09-28 11:32:33      阅读:350      评论:0      收藏:0      [点我收藏+]

标签:

提示:暂时不能用了,企业证书滥用

ios 企业证书 ipa 重新签名发布

1. 应用场景

当前有一个 未用企业证书签名的 ipa 文件,默认是不可以直接安装到设备上的;我们需要用企业版证书签名;

当前有一个已经用企业证书签名的 ipa 文件,不过我们可以用另外一个企业证书对其重新签名;

以上两种场景国内有开放的平台在做,比如 蒲公英

2. 重新签名原理和工具

技术分享
Solution:

Unzip the IPA

unzip Application.ipa
Remove old CodeSignature

rm -r "Payload/Application.app/_CodeSignature" "Payload/Application.app/CodeResources" 2> /dev/null | true
Replace embedded mobile provisioning profile

cp "MyEnterprise.mobileprovision" "Payload/Application.app/embedded.mobileprovision"
Re-sign

/usr/bin/codesign -f -s "iPhone Distribution: Certificate Name" --resource-rules "Payload/Application.app/ResourceRules.plist" "Payload/Application.app"
Re-package

zip -qr "Application.resigned.ipa" Payload
Edit: Removed the Entitlement part (see alleys comment, thanks)
技术分享

工具:

 https://github.com/maciekish/iReSign

https://github.com/RichardBronosky/ota-tools

https://gist.github.com/2878446

参考:http://stackoverflow.com/questions/6896029/re-sign-ipa-iphone

我目前正在建立与使用哈德森xcodebuild联编其次是xcrun没有任何问题,我的所有应用程序

我已经收到了几个IPA文件从不同的人,我想重新签订了企业账户而不是公司帐户(应用程序商店,或有时临时分布)。

我的问题是,当我试图辞职的应用程序,它会不会我的设备上安装(它应该因为它是一个企业版本)。该错误信息是设备(没有出现在iTunes)上,它告诉我简单地认为它不能安装应用程序。没有给出更多的信息。

我发现了一些信息,( http://www.ketzler.de/2011/01/resign-an-iphone-app-insert-new-bundle-id-and-send-to-xcode-organizer-for-upload/ )

这是可能的。我现在面临的问题是,它似乎并没有嵌入移动供应配置文件,我做我的正常建立(使用xcrun)这是可以控制的协同设计工具,或是否有可能重新标志xcrun ?

随着我的辞职剧本我目前做的

解压缩app.ipa
应用程序的名字= $(LS有效载荷)
xcrun -sdk的iPhoneOS PackageApplication -s“$ provisioning_profile”“$ PROJECT_DIR /负载/ $应用程序的名字”-o“$ PROJECT_DIR / APP-resigned.ipa”--sign“$ provisioning_profile”--embed“$ mobileprovision”
我看着在生成的IPA文件,它似乎是非常相似的原始应用程序。哪些文件要真正改变这里?我最初认为的_CodeSignature / CodeResources会改变,但内容看起来非常一模一样。

指针都大加赞赏。

重新签名IPA ( iPhone )

标签:

原文地址:http://www.cnblogs.com/CoderAlex/p/4843321.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!