iOS证书及ipa包重签名 · iodefog

玩了玩重签名,成功搞定重签名

准备工作:

1.准备你需要重新签名的ipa。

2.制作entitlements.plist

code 如下: 注意 VB2VQ6GKB2.com.test.enterprise 这个是使用下图箭头所指标识 VB2VQ6GKB2 相应变换。这个应该都会吧

<?xml version="1.0" encoding="UTF-8"?>  
  
<plist version="1.0">  
<dict>  
    <key>keychain-access-groups</key>
    <array>
        <string>VB2VQ6GKB2.*</string>
    </array>
    <key>get-task-allow</key>
    <false/>
    <key>application-identifier</key>
    <string>VB2VQ6GKB2.com.test.enterprise</string>
    <key>com.apple.developer.team-identifier</key>
    <string>VB2VQ6GKB2</string>
    <key>aps-environment</key>
    <string>production</string>
</dict>  
</plist>

这里关键点在于id的正确,这点搞了好久,总是和网上找的不一样。我这里用了“iPhone配置实用工具”这个工具来查看证书的,找到你的证书

3.选中你的证书,点击左上角导出按钮,导出成embedded.mobileprovision

4.解压ipa

upzip xxx.ipa

5.移除老的证书

rm -rf  Payload/xxx.app/_CodeSignature 
rm -rf  Payload/xxx.app/embedded.mobileprovision

 

6.替换证书

cp  embedded.mobileprovision  Payload/xxx.app/embedded.mobileprovision**

 

7.进入到钥匙串,找到对应的证书名称。进行重签名

certifierName="iPhone Distribution: Shenzhen Test Technology Co., Ltd."  

codesign -f -s $certifierName  --entitlements entitlements.plist Payload/xxx.app

 

8.进入到Payload/xxx/Info.plist,修改Bundle identifier 注:我这个地方修改就好使了,不知道是不是必须修改

9.打包成ipa

zip -r newxxx.ipa Payload

 


以上流程,我写了一个脚本,如下:

resign.sh

IPAName=$1

rm -rf new_${IPAName}.ipa
rm -rf Payload

unzip ${IPAName}.ipa

rm -rf Payload/${IPAName}.app/_CodeSignature 
rm -rf Payload/${IPAName}.app/Embedded.mobileprovision

cp Embedded.mobileprovision Payload/${IPAName}.app/embedded.mobileprovision

echo $CertifierName

codesign -f -s "iPhone Distribution: BEIJING SOHU NEW MEDIA INFORMATION TECHNOLOGY CO. Ltd."  --entitlements entitlements.plist Payload/${IPAName}.app

codesign -f -s "iPhone Distribution: BEIJING SOHU NEW MEDIA INFORMATION TECHNOLOGY CO. Ltd."  --entitlements entitlements.plist Payload/${IPAName}.app/Frameworks/*

zip -r new_${IPAName}.ipa Payload

 

使用方法:

  • 1.把Embedded.mobileprovision, entitlements.plist, resign.sh, xxx.ipa 放到同一个文件夹下
  • 2.利用终端,cd到文件夹下,执行以下命令。
sh resign.sh VipVideo-iPhone

注意:VipVideo-iPhone 一定是scheme名称。查找方式,保存ipa成.zip格式,解压,得到Palaod->VipVideo-iPhone。这个VipVideo-iPhone才是真正的scheme。

免责申明:
1. 本站所有教程、文章分享目的仅供大家学习和交流,资源连接来自于网络,非本站发布,本站也不存储任何资源!
2. 如有无法查看或链接失效,烦请报告联系管理员处理!
3. 本站无法保证资源质量及其时效性,恕不接受任何提问。
4.本站即不保存任何资源,也不对任何链接作品负责,希望大家赞助本站,费用仅维持本站的日常运营所需!
5. 百码云无法保证文章教程或资源的完善与安全,请自行检测解决。
6. 通过本站收集链接的相关资源,严禁杜绝任何形式的正式商业用途,请前往官方购买。
7. 但凡通过本站链接导航下载的任何作品,虽不归本站所有,但在研究学习的前提下,请务必在下载24小时后删除。
百码云资源站仅提供学习的平台,所有资料均来自于网络,版权归原创者所有!本站不提供任何保证,并不承担任何法律责任,如果对您的版权或者利益造成损害,请提供相应的资质证明,我们将于3个工作日内予以删除。本文章采用BY-NC-SA 4.0 《国际知识共享署名许可协议4.0》 进行许可 。
百码云 » iOS证书及ipa包重签名 · iodefog

提供互联网优质的链接集合站点

关于权限 站内帮助