Apple 开发者账号的分类
入行iOS行业一年多了,iOS上架这块基本上所有的问题都遇到过了,有幸管理过三种不同的apple开发者账号,和相应的证书。前两天在帮一家公司处理app的企业证书分发,当时以为很简单的事情,分分钟就OK,结果遇到了一个坑,七七八八的浪费了我很多时间。
拿到证书和开发者账号后就开始打包,但每次都提示签名不对,提示指定的Provisioning profile 不存在,我做了以下的尝试:
(1)是否Provisioning profile文件不存在或者是invalid。于是,登录到开发者中心逐一检查AppID、Provisioning profile,并没有什么异常,但是还是刷新了一下Provisioning profile,并在本地清理掉所有的Provisioning profile,重新打包还是出错。
(2)是否是Xcode版本的问题。我的Xcode版本是7.2,clean一下Xcode,清理一下缓存,并用CleanMyMac清掉了Xcode运行时产生的所有缓存,重新打包还是不出错。依然提示指定的Provisoning profile不存在。
(3)采取了一种暴力的方式,对于新手不推荐!copy错误提示中的UUID,关掉当前工程,进入到当前工程的文件夹下,找到对应的.xcodeproj文件,鼠标右键显示包内容,打开包里面的project.pbxproj文件,推荐使用 Sublime Text来打开。全局搜索copy到的UUID,然后全部删除,并保存。重新打开工程打包,依然出错。
(4)配置好对应的Team之后,不配置code sign,直接archive,导出方式选项里选择Save for Enterprise deployment。无法导出,会有如下错误:
add进去之后,输入你的apple id 除了提示账号已经存在并没有什么卵用!当时觉得应该是证书的问题。
(5)尝试着以另外的三种导出方法来导出,结果都成功了。就觉得应该是账号的问题。
(6)记得企业账号是可以添加多个team 成员的,以为是当前member的role权限不够,登录到Apple member center发发先我拿到的账号对应的role角色是agent,拥有足够的权限去配置证书、AppID、Provisioning Profiles。开始怀疑这个账号到底是不是真的企业账号。
(7)在开发者中心的账号信息那里看到了Account Type为 Company/Organizations。问题就出在这里,这个不是个企业账号,怎么可能够打包出In-House的ipa!!!晕死,浪费了我很多时间好么!!!
当然,不能怪别人,客户不懂技术,自然不知道apple的企业分发ipa是个什么回事,也自然不清楚apple 的开发者账号的区别了。
证书的制作流程网上很多,随便一搜就有。这里我简单的记录一下三种账号的区别,以及对应的证书、 App ID 、 Provisioning Profiles的区别。
一、苹果对开发者主要分为3类:个人、组织(公司、企业)、教育机构。即:
1、个人(Individual)
2、组织(Organizations)
组织类又分为2个小类:
(1)公司(Company)
(2)企业(Enterprise)
3、教育机构(Educational Institutions)
更多内容介绍,请看苹果官方说明:Choosing a Membership
新进入一家公司,拿到开发者账号(也就是apple ID)之后,点击Your account就可以看到你的账号信息了。如下图:
从Account Type类型可以看出, 我这个账号是Company/Organization类型的,下面再来看一个账号;
这个是一个人账号,再来看一个账号,这个是一个企业账号,也即是所谓的In-House发布时所需要的证书。
二、我们经常最关注的是个人、公司、企业这3类,公司和企业都属于“组织”大类,下面对这3个做下简单对比:
A、个人(Individual):
(1)费用:99美元一年
(2)App Store上架:是
(3)最大uuid支持数:100
(4)协作人数:1人(开发者自己)
说明:“个人”开发者可以申请升级“公司”,可以通过拨打苹果公司客服电话(400 6701 855)来咨询和办理。
B、公司(Company):
(1)费用:99美元一年
(2)App Store上架:是
(3)最大uuid支持数:100
(4)协作人数:多人
允许多个开发者进行协作开发,比个人多一些帐号管理的设置,可设置多个Apple ID,分4种管理级别的权限。
说明:申请时需要填写公司的邓白氏编码(DUNS Number)。
C、企业 (Enterprise)
(1)费用:299美元一年
(2)App Store上架:否
(3)最大uuid支持数:不限制
(4)协作人数:多人
费用:299美元一年
说明:需要注意的是,企业账号开发的应用不能上线App Store,只能企业内部应用。适合那些不希望公开发布应用的企业。同样,申请时也需要公司的邓白氏编码(DUNS Number)。
三、三种账号对应的证书和Provisioning Profiles、App ID区别。
这里只讲对应的Product证书和Distribution类型的 Provisioning Profiles的区别,关于证书的制作流程不讲。App ID没什么好说的,三种账号创建的App ID没有什么区别,选择唯一还是通用根据需求来就好。
(1)证书的区别:
首先来看看company类型账号的证书
这个product 选项里面我们通常会用到也就是AppStore and AdHoc和 Apple Push这两个了。再来看看 Individual的,如下图:
跟company没区别,原因在上面已经介绍过了。再来看Enterprise的,
前面有讲到过,Enterprise账号是不可以上传引用到AppStore的,所以这里就没有AppStore的选项。
(2)Provisioning Profiles
再来看看individual账号的
如我们所猜想的,跟company账号是一样的。再来看看enterprise账号的,
没有AppStore选项。
关于Apple开发者账号的介绍就这么多。
有一个需要注意的,iOS8之后,可以给应用添加widget extension,这个时候无论何种方式打包,一定要记得在开发者账号给widget添加独立的App ID以及对应的Provisioning Profile。打包前code sign选对就好。Xcode7不再支持通配符打包,不管是否带widget!!!
客户的问题还没有解决,目前有两种选择,要么让客户将company账号升级到企业账号,要么就挂到别人现成的企业账号上,但是这个需要将AppID从当前的账号上移除,操作起来风险很大!待商讨。
Apple 开发者账号的分类相关推荐
- Apple开发者账号介绍
一.Apple开发者账号介绍 1.开发者账号共有三种类型:个人级.公司级.企业级.公司和企业都属于"组织"大类,可多人协作.在苹果的开发者平台登录后,可在People界面邀请其他人 ...
- Apple开发者账号介绍及证书配置说明。
一.Apple开发者账号介绍 1.开发者账号共有三种类型:个人级.公司级.企业级.公司和企业都属于"组织"大类,可多人协作.在苹果的开发者平台登录后,可在People界面邀请其他人 ...
- iOS开发之Apple开发者账号支付开公司发票
Apple开发者账号,通过内购支付,是不可以开发票的,内购走的事海外实体,想要开发票使用visa卡进行支付,不要走内购.
- Apple开发者账号更改公司主体
由于公司营业执照上的公司名称发生变更,所以Apple开发者账号的邓白氏资质都需要相应变更,以下为变更方式: 拨打苹果技术支持电话 400-670-1855 最好由admin邮箱账号所属的人电话咨询(可 ...
- Apple开发者账号介绍及证书配置详细说明
一.Apple开发者账号介绍 1.开发者账号共有三种类型:个人级.公司级.企业级.公司和企业都属于"组织"大类,可多人协作.在苹果的开发者平台登录后,可在People界面邀请其他人 ...
- iOS开发-Apple开发者账号详解
证书类型 账号类型 价格 可以发布AppStore? 支持安装设备数量 申请条件 证书类型 个人账号 $99 √ 500 无限制 Ad Hoc, App Store 公司账号 $99 √ 500 DU ...
- Apple开发者账号续费问题
一.登录开发者网站 https://developer.apple.com/ 登录开发者网站之后,右上角点击Account 二.开发者账号到期提示: 在开发者账号到期前一个月,开发者网站 ...
- Apple开发者账号相关
证书类型 账号类型 价格 可以发布AppStore? 支持安装设备数量 申请条件 证书类型 个人账号 $99 √ 500 无限制 Ad Hoc, App Store 公司账号 $99 √ 500 DU ...
- apple开发者账号的区别
2019独角兽企业重金招聘Python工程师标准>>> 参考:http://www.cnblogs.com/KingStar/p/3642473.html http://ww ...
最新文章
- C++继承与派生(原理归纳)
- fedora apache php,Fedora 20下安装搭建LAMP环境Apache+MySQL+PHP
- Python之十大经典排序算法的实现和原理
- centos 显示50g硬盘但是 实际大小很小_天啦噜!知道硬盘很慢,但没想到比 CPU Cache 慢 10000000 倍...
- COM组件设计与应用(十三)(转载)
- 【图像处理】——Python OpenCV实现形态学膨胀、腐蚀开闭操作(可以用于图像滤波、图像分割等)
- 负基础学python编程_【数据科学系统学习】Python # 编程基础[二]
- java序列化深克隆_如何在内存序列化中使用Java深克隆对象
- 《Reids 设计与实现》第四章 整数集合和压缩列表
- mysql c3p0 释放连接_mysql重启后,防止c3p0丢掉连接数_mysql
- web前端简历的详解
- Linux抓包命令tcpdump以及常见抓包使用方法
- ArcGIS for Desktop 10.2安装破解与使用图文详解
- mecrosoft excel的单元格引用
- Intel Hex概述 以及 intel2readmemh 和 Intel HEX to BINARY File Converter Utility
- 淘宝卖家过劳死VS跳楼死
- python3爆破服务器_Python 3.5 之爆破二级域名.
- 【计算机毕业设计】双月湾亲子高端酒店网站
- Ubuntu16.04通过docker安装微信和QQ
- DDR4时序标准规范(一)