如何不上架AppStore(重签名)

作者 : 开心源码 本文共1130个字,预计阅读时间需要3分钟 发布时间: 2022-05-11 共127人阅读

前言

自己开发的或者朋友给的 .ipa or .app 如何天经地义的安装到你想要安装的手机上?


处理方案

除了上架 App Store 我们还能利使用 重签名 让我或者者公司开发的 app 安装到非测试设施上,也就是本文主要内容。

准备工作

1、需要被重签名app、archive包、 ipa

2、$ 299 企业开发者账号 or 企业证书(P12文件)+ 与此证书相匹配的任意形容文件(.mobileprovision)

3、有效的证书(能在钥匙串中查找),记录一下企业证书名称备使用

证书

4、.mobileprovision 配置形容文件** (以下三种取得途径)

  • 存储路径:~/Library/MobileDevice/Provisioning Profiles 拷贝出来重命名 embedded.mobileprovision

  • 能在 Xcode 中找一个有效的,右键 show in finder,将文件复制出来,重命名为 embedded.mobileprovision

    形容文件

  • 解压又当前企业账号build后的到app 显示包内容 得到 embedded.mobileprovision 拷贝出来备使用

embedded.mobileprovision

(* 注:安装包与形容文件放到同一目录下,我这里一律都放到桌面)

重签名

新建 Demo 项目, 使用我个人账号对编译出 Demo.app ,再使用企业账号对 Demo.app 重签名。

1、选择非企业开发者账号编译工程得到 Demo.app ,拷贝到桌面与上面得到的 embedded.mobileprovision 放到同一目录下

Demo.app

Show in Finder

Show in Finder

显示包内容

包内容

准备工作 的第4步中 embedded.mobileprovision 拷贝到这里进行替换

2、 生成 entitlements.plist 文件

先通过“security”命令,从 mobileprovision 文件中生成一个完整的 plist 文件
命令 : security cms -D -i "mobileprovision文件" > "entitlements文件"

命令-1

得到结果:

我们只是为了得到里面的 Entitlements 字段,用如下的命令
命令 : /usr/libexec/PlistBuddy -x -c 'Print:Entitlements' tmp_entitlements.plist > Entitlements.plist

命令-2

得到结果:

3、签名

命令 : codesign -f -s "证书" --entitlements "entitlements文件" "需要签名的app文件"

命令-3

新建文件夹 Payload,将 Demo.app 拷贝到文件夹 Payload 中执行命令
命令:zip -r new_demo.ipa Payload


总结

说明
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是摆设,本站源码仅提供给会员学习使用!
7. 如遇到加密压缩包,请使用360解压,如遇到无法解压的请联系管理员
开心源码网 » 如何不上架AppStore(重签名)

发表回复