iOS 企业重签名 无需替换包名

1、首先准备好待签名的ipa (此ipa 为非299$的开发账号签名后的ipa),企业版发布证书,embedded.mobileprovision配置文件,entitlements.plist 文件。证书配置与创建配置文件这里不做赘述。 entitlements.plist 文件格式为:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>application-identifier</key>
    <string>AAAAAA.com.test.test</string>
    <key>com.apple.developer.team-identifier</key>
    <string>AAAAAA</string>
    <key>get-task-allow</key>
    <false/>
    <key>keychain-access-groups</key>
    <array>
        <string>AAAAAA.com.test.test</string>
    </array>
</dict>
</plist>

AAAAAA.com.test.test 可在开发账号中获取,如果嫌麻烦可以直接使用 iResign 工具直接签名后,解压签名后得ipa也可以得到该文件。

2、将embedded.mobileprovision配置文件,entitlements.plist,ipa 放到同一个文件夹下。方便操作。

a、解压ipa

$unzip Your.ipa 

b、删除原先的签名信息文件

$rm -rf Payload/Your.app/_CodeSignature/

c、删除动态库的签名信息文件(这一步在很多重签名文字很少提及,但是又非常重要,动态库没有重签名会导致ipa可以安装,但是打开会闪退。由于我使用了七牛播放器所以删除签名信息,以下以PLPlayerKit.framework为例,大家使用别的动态库请自行删除)

$rm -rf Payload/Your.app/Frameworks/PLPlayerKit.framework//_CodeSignature/

d、动态库重新签名 (如果没有其他动态库可以跳过,多个就逐个签吧)

$codesign -f -s "iPhone Distribution: *******" Payload/Your.app/Frameworks/PLPlayerKit.framework/

e、app重签名

$codesign -f -s "iPhone Distribution: *******." -- entitlements entitlements.plist Payload/Your.app

f、打包ipa

$zip -r Your.app Payload

3、如果包名改不改无所谓可以直接使用工具重签名,方便快捷。如果需要保持包名不变。可以按以上操作打包。

 



作者:痛风少年
链接:https://www.jianshu.com/p/ac4d62912a5a
來源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值