web应用开发&研究 - 创建于 2014年8月17日

这是一位web前端开发工程师的个人站,内容主要是网站开发方面的技术文章,大部分来自学习或工作,部分来源于网络,希望对大家有所帮助。

致力于web应用开发&研究工作,专注web前端开发,关注互联网前沿技术与趋势。


Font Awesome | Respond.js | Bootstrap中文网

iOS ipa包重签名

背景:公司做游戏SDK的,提供SDK给第三方后,他们打包过来我们需要分发在不同的渠道,这个时候需要修改SDK的配置文件,ipa文件修改后是需要手机越狱或者ipa重签名才能安装成功的,所以研究了一下重签名的问题。

1.命令直接重签名

步骤1 : unzip YourApp.ipa

步骤2: rm -rf Payload/YourApp.app/_CodeSignature

步骤3: cp InHouse.mobileprovision Payload/YourApp.app/embedded.mobileprovision

步骤4: /usr/bin/codesign -f -s "iPhone Distribution: YourCompanyName" --resource-rules Payload/YourApp.app/ResourceRules.plist Payload/YourApp.app

步骤5:zip -r YourApp_inhouse.ipa Payload

* InHouse.mobileprovision 是你要用来签名的provision文件
* iPhone Distribution: YourCompanyName 是指该签名对应的证书的名字。这个可以在keychain中找到

2.iresign

https://github.com/maciekish/iReSign

iresign工具签名需要你提供四个信息,一个是ipa文件,一个是provision文件,一个是证书的common name,最后一个是entitlements.plist文件。前三个想必大家都懂,但是第四个之前真没听过,网上资料也有限。请用下面的方法生成entitlements.plist文件
*需要cd到Payload文件下,才可以生成
/usr/libexec/PlistBuddy -x -c "print :Entitlements " /dev/stdin <<< $(security cms -D -i production.app/embedded.mobileprovision) > Entitlements.plist
/usr/libexec/PlistBuddy -c 'Set :get-task-allow true' Entitlements.plist

3.iOS app singer

http://dantheman827.github.io/ios-app-signer/

个人比较推荐这个,可以直接xCode运行该工具,看到整个重签名流程,出错也容易找问题

posted @ 2017-03-06 11:39  Star1108  阅读(706)  评论(0编辑  收藏  举报