php重签ipa,如何利用开发者账号重签ipa文件,并部署到IOS设备做测试(ipa重新签名)...

以前只听说过apk可以重新签名,但是没有IPA重新签名的,最近碰到这种事情了,然后联想了比如91助手,itools等等这种第三方安装软件的“市场”,想到,IPA是可以重新签名的,于是去网上搜了一下,果然是可以的,以下是搜索内容,与大家分享一下:

方法一:

利用商业化工具签名,SeeTest支持把ipa重新签名,签名需要提供

provision文件,和开发者证书私钥和密码

方法二:

自己想办法签,代码参考如下

Step1 :

unzip YourApp.ipa

Step2:

rm -rf Payload/YourApp.app/_CodeSignature

Step3:

cp InHouse.mobileprovision Payload/YourApp.app/embedded.mobileprovision

Step4:

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

Step 5:

zip -r YourApp_inhouse.ipa Payload

* InHouse.mobileprovision 是你要用来签名的provision文件

* iPhone Distribution: YourCompanyName 是指该签名对应的证书的名字。这个可以在keychain中找到

方法三:

网上有推荐用一个叫iresign的工具签名,其实挺好用,该工具只能工作在mac下面

个人推荐用方法三,但是要注意一个问题,就是iresign需要你提供四个信息,一个是ipa文件,一个是provision文件,一个是证书的common

name,最后一个是entitlements.plist文件。前三个想必大家都懂,但是第四个之前真没听过,网上资料也有限。

请用下面的方法生成entitlements.plist文件

/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

生成之后,再利用iresign,就可以做出一个可以被xcode

instrument的ipa包了。

总结:

这种方式用起来是很麻烦,不如直接源代码直接编译打包方便,但是有特殊情况下,还是一种比

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值