美文网首页
使用iResign重签ipa

使用iResign重签ipa

作者: csp | 来源:发表于2017-06-03 14:46 被阅读948次

    当我们使用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
    下载之后直接使用软件,打开之后:

    E50961D9-7096-41F6-AFFE-A22381E4DC3A.png

    经过测试,在新系统里面,这些都需要填写。
    其中mobileprovision地址就是开发者平时开发的时候申请的描述文件。配套的证书也都需要保存在钥匙串里面去。


    iReSign_identifiers.png

    需要的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>PREFIX.yourappBundleID</string>
    <key>aps-environment</key>
    <string>production</string>
    <key>get-task-allow</key>
    <false/>
    <key>keychain-access-groups</key>
    <array>
    <string>PREFIX.yourappBundleID</string>
    </array>
    </dict>
    </plist>

    记住这里的application-identifier和keychain-access-groups,使用的就是上面图片中开发者注册证书的时候显示的Prefix和ID的组合。这些都是不能错的,也不能省略。否则重签名不成功。
    如果你申请的证书没有推送功能,删除
    <key>aps-environment</key>
    <string>production</string>
    这两行,本人在弄的时候就是因为这两句没有删除,不能安装到手机上。
    最后选择描述文件所对应的证书。

    相关文章

      网友评论

          本文标题:使用iResign重签ipa

          本文链接:https://www.haomeiwen.com/subject/oxxmfxtx.html