• ipa 重新签名


    下载编译iReSign

    https://github.com/maciekish/iReSign

    http://82flex.com/p/iresign

    企业证书重签名发布APP(支持APNS)   

    针对内部企业或者内测用户,我们希望APP测试完成后能立即在小范围内测用户手中进行体验以及相关功能的验证以及反馈。
    为了达到目的,一般我们会自己做一套内部发布系统,既然需要做内测发布,那么首先得有可以用的ipa包。并且保证功能不缺少。
    苹果的开发者证书只能保证最多100个用户安装,并且还得提供udid,苹果提供的企业证书可以免去udid。但是当我们兴冲冲去申请了企业证书后,问题来了:
    每个bundleid只能存在于一个账号,当需要推送APNS时,企业证书也得生成一个跟开发证书一样的bundleid,否则企业证书发布的版本要跟提交APPSTORE的版本不同bundleid,到时无法相互覆盖以及做兼容。

    是否有办法使用相同的bundleid,又能使用推送功能呢?
    方法是有的,那就是重签名。

    重签名方法如下:
    假如APPSTORE上的版本bundleid为:com.zalejiang.appstore

    1、用企业证书 生成一个其他bundleid的能支持APNS推送的证书。bundleid不限。例如:com.zalejiang.inhouse
    2、拿到提交APPSTORE的ipa包,解压:unzip appstore.ipa
    3、删除Payload/appstore.app/_CodeSignature
    4、更换描述文件:cp inhouse.mobileprovision Payload/appstore.app/embedded.mobileprovision
    5、重签名:codesign -f -s "iPhone Distribution: inhouse" --entitlements Entitlements.plist --resource-rules Payload/appstore.app/ResourceRules.plist Payload/appstore.app
    Entitlements.plist 是很重要的一个文件,具体格式见后文
    6、压缩成ipa包:zip -r New_appstore.ipa Payload

    其中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>JDL5JS4SKC.com.zalejiang.inhouse</string>
         <key>aps-environment</key>
         <string>production</string>
         <key>get-task-allow</key>
         <false/>
         <key>keychain-access-groups</key>
         <array>
              <string>JDL5JS4SKC.*</string>
         </array>
    </dict>
    </plist>


    标红的地方要跟使用的inhouse.mobileprovision文件里面的信息一致。
    压缩后安装的包直接用com.zalejiang.appstore的消息推送证书即可收到消息。

     http://pan.baidu.com/s/1kTHrhyR

    ios app 开发中ipa重新签名步骤介绍

     
     
     
     
  • 相关阅读:
    序列号Pickle模块
    随机数Random模块
    selenium保存cookies 实例02
    selenium读取浏览器已有Cookies 实例01
    selenium的简单演示程序
    java连接sftp服务器读取压缩包的文件(例:读取zip中的csv文件返回数组)
    java实现连接sftp服务器并下载文件到本地
    在idea中实现热部署
    java使用IText将数据导出为pdf文件(数据为excel表格样式)
    使用poi解析Excel文件转化数组形式的集合(List<String[] list)
  • 原文地址:https://www.cnblogs.com/hl666/p/4551754.html
Copyright © 2020-2023  润新知