跨平台应用开发进阶(四十一)使用Xcode打包 iOS 应用 archive 时四种证书的区别详解
文章目录
- 一、archive 四种模式
- 二、相同点
- 三、安装方式区别
- 四、iOS开发者账号(企业版)申请攻略
- 4.1 苹果开发者账号类型
- 4.2 企业版开发者账号的优势是什么?
- 4.3 企业版开发者账号的申请步骤
- 4.4 特别注意事项
- 五、拓展阅读
一、archive 四种模式
在应用XCode
进行苹果打包的时候有以下四个选项可供选择,在此累述一下四种模式的含义:
App Store
: 用来发布到App Store, 使用发布证书编译。(production
)Ad Hoc
: 在开发者账号中添加过UDID
的设备可以使用,使用发布证书编译。(production
)Enterprise
: 企业发布,使用企业证书编译。Development
: 在开发者账号中添加过UDID
的设备设备可以使用,使用开发证书编译。(Development
)
二、相同点
对于选项1和选项3,比较容易理解,而选项2和4虽然二者在安装测试的时候都可以用,但是二者区别总结如下:
相同点:
- 在创建证书的时候,都需要在
apple
帐号中添加具体设备,只有被选中的设备,才能安装该证书打出来的ipa包; - 二者都可以安装到真机上进行测试;
三、安装方式区别
archive
成ipa
包,通过蒲公英/iTunes tool
等第三方平台,进行安装,此种情况下两种证书都可以使用;真机连接到
Xcode
直接运行安装,此种方式一般为开发人员在开发过程中比较快捷的安装测试方式,但是,该方式只可以使用development
描述文件及code sign
用Developer
证书,如果使用production
描述文件及code sign
用Distribution
证书,不能运行调试,报:process launch failed: failed to get the task for process 10487
错误提示!苹果文档指出:
Ad Hoc
模式的包,和将来发布到App Store
的包在各种功能测试上是一样的,只要Ad Hoc
模式下测试(推送,内购等)没有问题,发布到App Store
也是没有问题的。
综上所述:前期开发测试的时候,Ad Hoc
和Development
包都可以使用,介于Development
多一个可以直接连接真机安装的功能,建议首选Development
模式创建证书,后期将要发布到AppStore
上的时候,再创建Ad Hoc
证书,安装测试,确保最终上架到AppStore
的应用无Bug。
四、iOS开发者账号(企业版)申请攻略
4.1 苹果开发者账号类型
Apple开发者账号分为以下三类:个人开发者账号、公司开发者账号、企业账号
个人开发者账号:
$99美元
,可以App Store上架,最大udid
支持数为100,需要创建 Apple ID,协作人数仅开发者自己,不需要填写公司的邓白氏编码(D-U-N-S Number
)。公司开发者账号:
$99美元
,可以App Store上架,最大udid
支持数为100,需要创建 Apple ID,允许多个开发者进行协作开发,需要填写公司的邓白氏编码(D-U-N-S Number
)。企业开发者账号:
$299美元
,不可以App Store上架,不限制udid
支持数量,需要创建 Apple ID,允许多个开发者进行协作开发,需要填写公司的邓白氏编码(D-U-N-S Number
)。
4.2 企业版开发者账号的优势是什么?
可以不通过苹果审核,分发APP,补齐部分APP因审核过于严苛,而无法进行分发的短板。
4.3 企业版开发者账号的申请步骤
选定一个人作为账号持有人,最好选定一个熟知公司信息,并能随时联系到公司法人,并且可以获得公司营业执照等信息的人,如公司高管或者法人本人。
准备一个企业邮箱,用163之类的容易被拒。
使用这个企业邮箱去注册一个AppleID,注册地址:https://appleid.apple.com/account,注意填写的个人信息要是上面选定的持有人的真实信息,主要是姓名和电话,注册完成记得开启两步验证。
进入注册企业账号官网:https://developer.apple.com/cn/programs/enterprise/,登录上面注册好的AppleID,然后拉到网页最下面的“开始申请”,选择仅在我的公司内部使用,开始填写申请表格
用持有人的iPhone去App Store下载 “Apple Developer”软件,进行注册。
下载完成后,登录上面注册的AppleID账号。
根据提示,填写真实公司信息及持有人信息,注意有的页面需要填写纯英文,有的页面需要填写中文,注意看页面上的提示,填错将不能继续。
填写的信息应该包括公司英文名称、邓白氏码(如果忘记了,可以再这里查询https://developer.apple.com/enroll/duns-lookup/#!/search)、备案的官网地址(注意官网上留的联系方式,苹果可能会通过该联系方式来联系公司,验证持有人的真实身份,注意接听)、公司地址、持有人姓名、持有人身份证号码、持有人人脸识别等等。
4.4 特别注意事项
企业账号申请相对困难些,在和苹果审核人员沟通时,一定要注意不能说因为内部测试而申请企业账号的,
testfligt
完全可以内部测试使用了。一定要说是公司内部人员使用,而非内部测试使用,可以准备一个申请理由:比如用于公司内部的OA考勤办公系统的APP版开发,用于公司人数较多,且公司信息的机密性,不方便将公司内部使用的APP上架至App Store,所以需要申请一个企业版的开发者账号,以便提供公司内部员工的办事效率。一定要强调公司人数超过100人,如果被苹果查到注册人数不到100,就跟苹果说开了分公司或者已经扩张了,现在总人数已经超过100了,因为不到100个员工是没有资格申请企业版开发者账号的。
全部要使用公司真实信息进行注册,包括账号持有人、联系电话、注册使用的iPhone必须是持有人本人使用的手机。
注意接听国外电话,在确认公司信息的过程中,可能因为他们刚刚换班的原因,苹果客服一般会选择在早上9点左右打来电话。
五、拓展阅读
- 《跨平台应用开发进阶(二十二) :Android 应用安全机制实现方案》
跨平台应用开发进阶(四十一)使用Xcode打包 iOS 应用 archive 时四种证书的区别详解相关推荐
- 红米3 android 版本,红米3四款手机有什么不同?红米3系列手机各版本区别详解
近日,红米手机3的指纹识别升级版本通过工信部认证正式亮相.今天红米3系列产品再次亮相工信部.加上此前亮相的红米3指纹识别升级 版,如今工信部认证中共有4款红米3系列的手机.分别是2015810/201 ...
- 跨平台应用开发进阶(六十一):uni-app 跨平台技术开发框架可行性调研
文章目录 一.流程类 二.研发类(uni-app框架) 三.心得分享(研发踩坑&uni-app踩坑) 四.拓展阅读 一.流程类 IOS和安卓企业开发者账户申请流程(申请渠道.需要提供的相关证明 ...
- Burp Suite爆破模块中的四种模式的区别详解和演示(暴力破解)
BrupSuite爆破的四种模式详解 最近看了好多关于暴力破解的博客,其中用的最多的工具就是bp了,但是好多都是一上来给了执行步骤,却没有对爆破的这几个模式选择进行解释,所以今天萌新写个纪录,来阐明这 ...
- 跨平台应用开发进阶(五十一):HTML5(富文本内容)连续数字、字母不自动换行问题分析及解决
文章目录 一.前言 二.问题分析 三.解决方法 3.1 对 input 标签设置 3.2 对 input 标签内的 p 标签设置 四.延伸阅读 顶部状态栏穿透问题 五.拓展阅读 一.前言 项目开发过程 ...
- Appium+python自动化(四十一)-Appium自动化测试框架综合实践 - 即将落下帷幕(超详解)
1.简介 今天我们紧接着上一篇继续分享Appium自动化测试框架综合实践 - 代码实现.到今天为止,大功即将告成:框架所需要的代码实现都基本完成. 2.data数据封装 2.1使用背景 在实际项目过程 ...
- 跨平台应用开发进阶(十一) :uni-app 实现IOS原生APP-云打包集成极光推送(JG-JPUSH)详细教程
文章目录 一.前言 二.资源 三.集成 四.遇到的问题及解决措施 4.1 IOS开发者证书无推送权限 4.2 manifest中并没有配置push模块.但云端打包ios就是一直报Code Signin ...
- 跨平台应用开发进阶(四十六)webview方式嵌套H5应用加载慢解决方案
文章目录 一.前言 二.优化建议 三.实施方案 3.1 优化项目结构,减小项目组包体积 3.2 去除项目冗余字体文件 3.2.1 字体筛选 3.2.2 字体压缩 3.3 gzip压缩 3.4 ETag ...
- 跨平台应用开发进阶(四十三)一文走近网络层抓包工具:WhireShark
文章目录 一.前言 二.条件过滤 三.字段含义 四.TCP连接 4.1 三次握手示例 五.色彩规则 六.分析方法 6.1 Packet size limited during capture 6.2 ...
- 跨平台应用开发进阶(十二) :uni-app 实现应用桌面图标角标提示及应用跳转
文章目录 一.前言 二.实现 2.1 集成极光实现 2.1.1 通道支持 2.1.2 iOS 角标 2.1.3 华为角标 2.1.4 小米角标 2.1.5 vivo 角标 2.2 H5+实现 三.遇到 ...
最新文章
- Yann Lecun纽约大学《深度学习》2020课程笔记中文版,干货满满!
- 从一个前端项目实践 Git flow 的流程与参考
- 面向对象程序设计_面向对象的程序设计(续)
- PP模块快速入门之功能简介
- 第四范式获批工信部工业和信息化人才培养工程培训基地
- WSL端口映射到win
- python将csv一行保存一个txt_Python读写文件(csv、txt、excel)
- mongodb安装_Windows系统安装运行Mongodb服务
- 【Java】五种常见排序之-----------冒泡排序
- oracle asm磁盘头 备份,ASM磁盘头的第三个备份-Physically Addressed Metadata Redundancy
- C/C++命令行参数那点事
- **【POJ - 3122】 Pie(二分寻值)
- 华为郭平:很愿意使用高通芯片制造手机
- hdu 1718 Rank
- 漫话:如何给女票解释华为鸿蒙OS是怎样牛逼实现跨平台的?
- java网络通信技术示例:简单的聊天小程序
- 大学四年软件工程专业的学习经验总结
- bootstrap完整左侧导航栏代码及结果样式
- 有赞订单搜索AKF架构演进之路
- 线上实习 牛刀小试——增删改查
热门文章
- Part I 空气曲棍球 Chapter7(7.1 Understanding Textures)
- 数据库:结构化查询语言
- python double转int_int、float、double数据类型之间转换的原则
- 安卓毕业设计app项目源码基于Uniapp实现的美食餐厅订餐点餐
- 程序猿啊你闷骚又迷人
- SAP Hardcode(硬码)的处理方法
- hdoj 1026 搜索
- 计算机区位码2083转为16进制是多少,区位码2083如何转化为十六进制?
- 华硕笔记本安装centos后wifi无法开启bug
- 看看你是SAP几级?(转贴)