xcode打包ipa_codesign签名ipa

1、简介

利用Xcode的命令 security 和 codesign 重签ipa文件。重签名与Xcode里用build打包时进行的签名操作是一个原理,具体来说,先了解一下iOS相关的证书类型。

证书类型:

证书类型 使用场景
开发(Development)证书和描述文件 用于开发测试,在Xcode中打包后,可在真机环境调试、安装
发布(Distribution)证书和描述文件 用于提交Appstore,在Xcode中打包后,可使用Xcode、Application Loader提交到Appstore审核发布

证书作用:

证书 文件后缀 文件类型 作用
Provisioning Profile .mobileprovision 描述文件 Provisioning Profiles文件(配置文件), 作用是绑定设备UDID,所以在申请开发描述文件之前,先添加调试的设备。双击时打开Xcode安装在电脑上的描述文件,用命令行可以查看安装的描述文件,可以过滤掉过期的描述文件。
Signing Certificate .cer/.p12 证书文件 有开发和发布的证书,可以在钥匙串查看安装的可用的证书,过期时间等。p12是一个加密的文件,只要知道其密码,就可以供给所有的 Mac 设备使用,是这个应用的唯一标识证书和开发者,用于对应 bundleID 的应用开发和打包测试。

注:

  • 描述文件保存在 macOS 路径:~/Library/MobileDevice/Provisioning\ Profiles/

  • 查看安装的证书使用命令:security find-identity -p codesigning -v

如果是团队开发,一般会生成p12证书提供给组员使用,这样更加好管理证书。

证书名字 用途
adhocXXX.mobileprovision 描述文件。用于生成 adhoc 包时,描述可以安装ipa包的设备UDID和证书关系。(包含推送、apple pay等权限声明内容)
devXXX.mobileprovision 描述文件。用于生成 dev 包时,描述可以安装ipa包的设备UDID和证书关系。(包含推送、apple pay等权限声明内容)
devXXXPushXXX.p12 推送证书。用于 dev 包推送时,认证和关联 应用bundleID 的证书关系。
devXXX.p12 开发证书。用于打包App时,生成 dev 的 ipa 包需要的开发者信息。
disXXX.mobileprovision 描述文件。用于生成 dis 包时,描述应用bundleID与证书的关系。(包含推送、apple pay等权限声明内容)
disXXXPushXXX.p12 推送证书。用于 dis(或adhoc) 包推送时,认证和关联 应用bundleID 的证书关系。
disXXX.p12 发布证书。用于打包App时,生成 dis (或adhoc) 的 ipa 包需要的开发者信息。

注:

  • 如果需要添加新的设备UDID,其实只需要更新 .mobileprovision 描述文件就可以;

  • 如果证书超过了有效期,.p12 和 .mobileprovision 文件需要重新生成,如果 revoke 生成新的证书,旧的证书和证书对应的ipa包不能再安装在设备上。

关于证书类型说明:

用途 dev adhoc dis 企业证书
能否用于送审 不能 不能
不越狱且不添加到证书的设备能否安装
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值