当我们使用app store或者其他来源得到的ipa,特别是一个app store的ipa,如果想安装到自己的手机上,是不能直接安装的。有时候我们想用企业证书测试分发一个已经上架app store的ipa,不修改bundle id是不能直接安装的。这个时候就需要重签名。我遇到情况是,公司的app已经上架app store,这个时候公司需要改账号,变成企业账号,如果直接换过去,那很多第三方的统计、推送都需要重新上传证书,修改bundle id。很费时间,也不划算。所以这个时候需要用到重签名。 亲测,mac系统10.12.4,手机ios10.3.2。 iResign下载地址:https://github.com/maciekish/iReSign 下载之后直接使用软件,打开之后:
经过测试,在新系统里面,这些都需要填写。 其中mobileprovision地址就是开发者平时开发的时候申请的描述文件。配套的证书也都需要保存在钥匙串里面去。
需要的plist文件里面,字段的格式: application-identifier PREFIX.yourappBundleID aps-environment production get-task-allow keychain-access-groups PREFIX.yourappBundleID记住这里的application-identifier和keychain-access-groups,使用的就是上面图片中开发者注册证书的时候显示的Prefix和ID的组合。这些都是不能错的,也不能省略。否则重签名不成功。 如果你申请的证书没有推送功能,删除 aps-environment production 这两行,本人在弄的时候就是因为这两句没有删除,不能安装到手机上。 最后选择描述文件所对应的证书。