Mac下给iOS的ipa重签名

重签名可以把越狱市场上的app重新用我们自己的开发者证书进行签名,然后我们就可以在我们不越狱的手机上安装越狱应用了。 如何重签名 在网上找重签名,很多都说使用IResin,但是
重签名可以把越狱市场上的app重新用我们自己的开发者证书进行签名,然后我们就可以在我们不越狱的手机上安装越狱应用了。

如何重签名

在网上找重签名,很多都说使用IResin,但是不知道为什么总是重签名失败。提示:warning: --resource-rules has been deprecated in Mac OS X >= 10.10!

找了很久终于在iOS应用逆向工程论坛里看到有一篇 最简单的重签名应用的方法 。使用的是 fastlane/sign脚本
使用方法

安装好brew,先用brew安装ruby,然后用gem安装sigh。

1

 brew install ruby

2

 sudo gem install sigh
使用就非常简单了:

1、输入sigh resign,回车
2、把要签名的ipa文件拖到窗口上,回车
3、填写用来签名的证书,回车
4、把embedded.mobileprovision文件拖到窗口上,回车
5、好了,resign脚本会自动更改bundel id,签名并重新打包。

注意

ipa包名不要有中文。

像微信这样多targets的ipa无法用上述方法签名,文章里说用resign.sh进行签名。

./resign.sh YourApp.ipa "iPhone Distribution: YourCompanyOrDeveloperName" -p 
.mobileprovision -p 
.mobileprovision -p 
.mobileprovision -p 
.mobileprovision resignedYourApp.ipa

举个例子说明:重签名一个叫乐动力的应用,里面包含一个XQTodayExtension.appex的通知栏插件,我们来看怎么签名:

1、先去导出两个mobileprovision文件,分别是应用和Plugin的,这里我导出了1.mobileprovision和2.mobileprovision,分别对应mm.weixin.app和mm.weixin.app.Demo。

其中1.mobileprovision和2.mobileprovision这两个配置文件从你自己的开发者账户里面导出。

2、在1.4这个版本的sigh里,resigh.sh的位置是:
/usr/local/lib/ruby/gems/2.3.0/gems/sigh-1.4.0/lib/assets/resign.sh

运行resign.sh进行签名:

resign.sh /Users/Peng/Code/Test/xiaoqin.ipa "iPhone Distribution: YourCompanyOrDeveloperName" -p 
mm.weixin.app=/Users/Peng/Code/Test/1.mobileprovision -p 
mm.weixin.app.Demo=/Users/Peng/Code/Test/2.mobileprovision 
/Users/Peng/Code/Test/resignDemo.ipa

你可能感兴趣的:(Mac下给iOS的ipa重签名)