in house从字面意思理解就是‘内部的’,in house版本的ipa就是一个用于公司内部使用或测试的一个苹果应用程序安装包。

作为一个app应用程序开发者,在app应用程序在苹果商店上架前总需要将安装包安装到ios机器上进行测试,这个时候我们就需要打包in house版本的ipa了,打包in house实际上是一个将ipa应用程序重新签名的一个过程。下面我们就讲述如何发布in house

一般来说打包in house需要以下东西

MAC机器,一般打包ipa都是在MAC机上打包的,一个后缀名为.mobileprovision概要配置文件,一个后缀名为P12的证书,还有一个后缀名为.cer的证书,还有就是你想重新签名的ipa.

如果你的P12证书已经包含专用密钥那么只需要在MAC上双击P12j将证书和密钥导入到钥匙串中去。

如果没有包含专用密钥,那么为P12导入专用密钥 ,在mac机中双击P12和密钥在钥匙串中倒开然后选中证书和专用密钥,右键导出两项如下图

然后弹出另外一个对话框提示保存的路径和格式,路径自己定,格式选择"个人信息交换(.P12)")

这样我们就得到了一个包含专用密钥的P12证书

这样我们就在钥匙串中有了证书。

你可以在MAC机上新建一个文件夹,放入概要配置文件123.mobileprovision,P12证书,cer证书,和test.ipa

在文件夹中新建一个ResourceRules.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>rules</key>
<dict>
<key>.*</key>
<true/>
<key>Info.plist</key>
<dict>
<key>omit</key>
<true/>
<key>weight</key>
<real>10</real>
</dict>
<key>ResourceRules.plist</key>
<dict>
<key>omit</key>
<true/>
<key>weight</key>
<real>100</real>
</dict>
<key>^SC_Info/.*\.sinf$</key>
<dict>
<key>omit</key>
<true/>
<key>weight</key>
<integer>10000</integer>
</dict>
<key>^SC_Info/.*\.supp$</key>
<dict>
<key>omit</key>
<true/>
<key>weight</key>
<integer>10000</integer>
</dict>
</dict>
</dict>
</plist>

然后再在文件夹中我们命名为inhouse.sh,在inhouse.sh写入如下命令

if ! ([ -f "$1" ]); then
echo \"${1}\"不是合法文件
exit
fi
ipaName=${1%.ipa}
if [ "$ipaName" = "$1" ]; then
echo \"${1}\"不是ipa文件
exit
fi
unzip ${ipaName}.ipa
rm -rf Payload/*.app/_CodeSignature/
cp 123.mobileprovision Payload/*.app/embedded.mobileprovision
(/usr/bin/codesign -f -s "iPhone Distribution: Ifree studio limited" --resource-rules Payload/*.app/ResourceRules.plist Payload/*.app/) || {
echo failed
rm -rf Payload/
exit
}

zip -r ${ipaName}Inhouse.ipa Payload/
rm -rf Payload/

其中Ifree studio limited就是证书在钥匙串中的名字可以查看上图中钥匙串的名称

然后就是在mac机器上的终端命令中跳到文件夹中执行./inhouse.sh test.ipa

这样就会打包出ipa了

如果提示没有权限可以通过命令

chmod 777 inhouse.sh为inhouse.sh添加权限,另外如果在执行sh命令时候报错可以在命令中输入

export CODESIGN_ALLOCATE="/Applications/Xcode.app/Contents/Developer/usr/bin/codesign_allocate"
这样我就在文件中得到了一个名字为testInhouse.ipa的文件。

iOS开发--in house发布和安装(ipa重新签名)相关推荐

  1. app store/ios开发证书、发布证书、推送证书的快捷制作

    文章目录 前言 一.下载安装AppUploader工具 二.使用方法 1.中英文切换 2.证书制作 总结 前言 本文提供给那些无苹果电脑情况下想要快速制作ios证书的人群(QQ:847381460) ...

  2. iOS开发证书和发布证书如何在多台电脑上共用?

    假设我在电脑A上能用证书进行开发和发布,我现在想在电脑B上也要进行开发和打包发布怎么办? 由于在电脑B上添加开发证书和发布证书的流程是一样的. 因此下面只讲解在电脑B上添加发布证书的步骤: 在电脑B上 ...

  3. IOS开发(22)之生成IPA文件并安装到越狱后的真机上

    1 前言 本文为临时加塞,由于工作需要,公司要求将Xcode中的项目生成IPA文件,用于版本记录,由于没有咱们木有开发者账号,所以需要另类的IPA生成和发布方式,今天折腾了一番终于搞定了,特此与大家分 ...

  4. 【iOS开发】微信登录---没有安装微信客户端的解决方法(微信网页版登录)

    转载地址: https://www.jianshu.com/p/a92b532708b9 转载地址:https://www.jianshu.com/p/1c6acd09fe28

  5. 苹果iOS App上架流程,非iOS开发人员上架教程

    iOS应用上线发布流程一般包含相关证书文件的配置.Xcode的设置.App Store Connect填写App的相关信息.ipa包上传.审核结果以及相关邮件回复.相关证书文件的配置与Xcode的设置 ...

  6. [IOS之应用程序发布到苹果APP STORE完整流程]

    OS 发布证书申请 目录 概述 一.事前准备  1.1 准备苹果帐号 1.2 进入证书申请界面 1.3 申请请求文件 1.3.1 钥匙串程序申请请求文件 1.3.2 保存请求文件设置 1.3.3 保存 ...

  7. iOS安全之在模拟器中安装APP

    我一直在想iOS 模拟器如何安装 微博.UC等一些非系统自带的应用? Xcode提供了simctl命令来对模拟器进行各种操作,这个命令的路径是: /Applications/Xcode.app/Con ...

  8. ipa文件怎么安装到iphone_无视签名随意安装 IPA 文件

    今天要分享的内容依然是和签名有关的,只不过今天的内容适用于已经越狱的用户,只有在越狱以后才能实现我标题中的效果.名称:AppSync Unified软件源:https://cydia.akemi.ai ...

  9. IOS 7.1 在线安装IPA(OTA无线发布)整理

    本地服务器名:xampp 思路: 1.将生成的 .plist文件放到dropbox中 复制分享链接  将连接写入到index.html中 2.将ipa程序包 放在本地或者上传到dropbox中 获取连 ...

最新文章

  1. 树状数组 ---- 树状数组+动态维护前缀中位数 D. Omkar and Medians
  2. SAP Spartacus org unit list当前行is-current的判定逻辑
  3. arch 安装准备--包管理的使用pacman
  4. 微型计算机原理第二版学习辅导,微型计算机原理及应用学习辅导.pdf
  5. y查询硬盘内存CPU
  6. R语言实现基本统计分析之t检验
  7. Castle IOC容器构建配置详解(二)
  8. JAVA 基础语法(五)——数组
  9. 【HTML+CSS】静态网页设计期末大作业——我的家乡无锡印象
  10. 给自己做个文件的保险箱
  11. cmos电路多余输入端能否悬空_CMOS电路多余输入端悬空,会造成逻辑混乱,该如何处理?...
  12. 2020 年 4 月使用 Aria2 加速下载百度网盘文件
  13. 烧钱,救得了中国游戏吗?
  14. vs code实现网页自动刷新
  15. 如何动手搭建一套简单的直播系统
  16. 01-线性回归sklearn实现
  17. jk女孩被人偷拍知名企业代码泄露, 原来是属性注解模式(Attribute Annotation Pattern)兴风作浪
  18. 如何去远程控制公司电脑 这三样必备一样也不能少
  19. Lumerical官方案例、FDTD时域有限差分法仿真学习(十四)——超透镜(Metalens)
  20. 专利 | 基于微表情与脑波分析算法的心理健康状况分析算法

热门文章

  1. 2022年全球市场蒸汽喷砂机总体规模、主要生产商、主要地区、产品和应用细分研究报告
  2. T14 Gen2 或 P14s Gen2 安装Ubuntu18
  3. 最常见的编程风格【清风不惊云】
  4. GPIO内部结构和各种模式
  5. 登录界面实现动态背景
  6. windows下使用redis
  7. 超好用的vue移动插件,大全!
  8. Win7启动无桌面(explorer.exe)
  9. 凉凉!深扒那个有点“咪蒙”的阿里美女高管!
  10. 2022年12月最新python学习基础教程01