Apple开发者账号介绍及证书配置说明。

一、Apple开发者账号介绍

1.开发者账号共有三种类型:个人级、公司级、企业级。公司和企业都属于“组织”大类,可多人协作。在苹果的开发者平台登录后,可在People界面邀请其他人员协作开发,邀请的人需要注册一个apple id 邮箱,并且可以设置开发人员的权限。

p

2.辨别你手中账号是什么类型:

A:个人级:登录后的页面如下图:红色马赛克下方是:Apple Developer Program,再下方,只有Certificates,identifiers&Profiles和App Store Connect两个图标,第一个图标是开发者证书、App ID和描述文件生成的入口,第二个图标是将APP上传到App Store的入口。

B:公司级:登录后的页面如下图:红色马赛克下方是:Apple Developer Program,再下方,有People、Certificates,identifiers&Profiles和App Store Connect三个图标,第一个图标邀请其他开发人员的入口,第二个图标是开发者证书、App ID和描述文件生成的入口,第三个图标是将APP上传到App Store的入口。

C:企业级:登录后的页面如下图:红色马赛克下方是:Apple Developer Enterprise Program,再下方,有People、Certificates,identifiers&Profiles两个图标,第一个图标邀请其他开发人员的入口,第二个图标是开发者证书、App ID和描述文件生成的入口。

对比:

1、个人(Individual):

  (1)费用:99美元每年

  (2)App Store上架:是  只能上架到App Store

  (3)最大UDID支持数:100台

  (4)协作人数:1人(开发者自己)

说明:“个人”开发者可以申请升级“公司”,可以通过拨打苹果公司客服电话(400 6701 855)进行咨询办理。

2、公司(Company):

  (1)费用:99美元每年

  (2)App Store上架:是只能上架到App Store

  (3)最大UDID支持数:100台

  (4)协作人数:多人

    允许多个开发者进行协作开发,比一个人多一些账号管理设置,可以设置多个Apple ID,分为4种级别的权限。

说明:申请时需要填写公司的邓白氏码(DUNS Number)

2、企业(Enterprise):

  (1)费用:299美元每年

  (2)App Store上架:否(不能上架到App Store,只能企业内部使用)

  (3)最大UDID支持数:不限制

  (4)协作人数:多人

    允许多个开发者进行协作开发,比一个人多一些账号管理设置,可以设置多个Apple ID,分为4种级别的权限。

说明:申请时需要填写公司的邓白氏码(DUNS Number),注意:只能企业内部使用,否则有被封号的风险。

总结:

1.个人级和公司级都有App Store Connect,表明这两种只能上架App Store供用户下载。而企业级的没有,表明APP不能上架App Store,可通过 item-services分发来下载。

2.企业级账号,每年至少重新打包ipa一次,ipa包中有证书信息,证书的有效期是一年,一年不更新,APP将闪退,无法进入。(即每年至少更新一次,无设备数量限制)。个人/公司级别的没有限制,只要成功上架到App Store,如果没有特殊情况,理论可以放到苹果公司倒闭也不用去更新。

3.企业级账号,安装后需要去设置中信任APP,系统级限制,无法跳过。个人/公司级没有该限制。

4.企业级账号,只能放在自己的服务器或者三方平台(蒲公英)。不能上架App Store(不是难上架,是此类型账号根本就没上架App Store的功能)。

个人/公司级,只能上架到App Store。如果想放到自己的服务器,或者第三方平台。首先收集手机的UDID,添加到账号中,再打包。上面有介绍,每个账号只能添加100个UDID,也就是此类型账号,如果发布APP到自己服务器,最多只能100台手机可以安装。如果有新手机想安装,需要先收集该手机的UDID,然后添加到账号中,重新生成证书,然后重新用新证书打包,发布,最后新手机才可以安装(也就是平时打的可调试(Debug)包)。这种可调式(Debug)包的有效期也是一年。ipa包中有证书信息,证书的有效期是一年,一年不更新,APP将闪退,无法进入。(即每年至少更新一次,而且只能最多100台设备可以安装)。

5.个人和公司的区别是,协作人数的不同

公司和企业的相同点,都可以多人协作

(企业)和(个人/公司)的区别:

a.企业不能上架到App Store,个人/公司必须上架到App Store;

b.价格不同。

c.个人/公司上App Store必须经过苹果的人工审核(上架审核周期在7天左右)。更新版本也是需要经过苹果审核的(更新版本的审核周期在3天左右),审核不通过,需要iOS开发处理,所以上面的上架周期和更新周期都是最为理想的情况。咱们的产品适配包更新是不需要审核的,只有涉及到APP原生改动的,才需要提交版本,进行审核。而企业级发布到自己服务器或者第三方平台是不需要审核的。

6.问哪种账号好,答:没有好坏之分,它们各不相同,按需所取,没有绝对。

7.没有苹果账号,打不了包。

二、开发者证书、App ID、描述文件的创建

1.开发者证书:

总共有两种类型:Developer(开发证书)和Distribution(发布证书),这个是最基础的,不论是真机调试,还是上传到appstore都是需要的,是一个基证书,用来证明自己开发者身份的;

2.App ID:

      顾名思义,是一个APP的唯一标示,相当于人的身份证号,如果有两个安装包A和B是同一个App ID,安装A后再安装B,B就会将A覆盖掉,取而代之。APP的更新也就是这个道理,安装了1.0版本。如果发布1.1版本,需要1.1版本的App ID和1.0的相同,手机会先去找是否有次App ID已经安装了,如果未安装,则直接进行安装1.1版本;如果发现有1.0版本,则对1.0版本进行覆盖。类似同一个文件夹下,相同名字的文件只能有一个,如果再拷贝一个相同名字的文件,就会提示是否替换掉旧的文件。

      在设置项中可以配置该应用的权限,比如是否用到了PassBook,GameCenter,以及更常见的push服务,如果选中了push服务,那么就可以创建生成下面第3条所提到的推送证书,所以,在所有和推送相关的配置中,首先要做的就是先开通支持推送服务的App ID;

3.描述文件:

Profiles,这个东西是很有苹果特色的一个东西,我一般称之为描述文件,该文件将App ID,开发者证书,硬件Device绑定到一块儿,在开发者中心配置好后可以添加到Xcode上,也可以直接在Xcode上连接开发者中心生成,真机调试时需要在描述文件中添加真机的UDID;是真机调试和上架必备之珍品;

开发流程

平常我们的制作流程一般都是按以上序列进行,先利用开发者帐号登陆开发者中心,创建开发者证书,App ID,如果在App ID中开通推送服务,在开通推送服务的选项下面创建推送证书(服务器端的推送证书见下文),之后在描述文件中绑定所有的证书id,添加调试真机等;

以下操作需要在苹果电脑上实现

4.开发者证书创建:

(1)首先登陆到开发者中心,点击Certificates,identifiers&Profiles图标,点进证书,会显示如下界面,点击右上角的加号

会出现以下界面,该操作重复两次,分别创建开发测试证书和发布证书,开发测试证书用于真机调试,发布证书用于提交到appStore,我们以开发证书为例,选择第一个红框中的内容;

然后下一步,会提示创建CSR文件,也就是证书签名请求文件,会有很详细的操作说明,如果英文不太好,可以参考下图;

(1)  去Launchpad-->其他中找到  “钥匙串访问”  点击钥匙图标

(2)  生成证书请求:钥匙串访问⟶证书助理⟶从证书颁发机构请求证书

输入两个电子邮件地址和常用名称。电子邮件地址是你注册AppleID。

a)  常用名称输入公司名称

b)  选择“存储到磁盘”。保存后的名称应该为:CertificateSigningRequest.certSigningRequest

之后将该CSR文件保存到一处;

c)  保存到磁盘后在你的钥匙串访问窗口应该会出两个密钥,一个公钥密钥,一个专用密钥,红色部分就是你在上面输入的常用名。

备注:CSR文件尽量每个证书都制作一次,将常用名称区分开来,因为该常用名称是证书中的密钥的名字;

(5)    生成Certificates证书

提交上去后就会生成一个cer证书,如图所示,有效期为一年;证书可不轻易删除,可能会造成十分严重的后果(尤其是企业级的发布证书,删除后已经安装在手机上的APP将会闪退,无法使用)。会造成相应的Provisioning Profiles失效,如果是一个团队大家都在用,你把这个证书删除了,会导致别人的描述文件失效。所以不提倡删除。

利用同样的方法配置一下Distribution发布证书,下载保存,双击安装;在钥题串登录-我的证书中可以查看

5.App ID的创建

1.以上开发者证书的配置完成了,下面我们来配置App ID和推送证书;

选择 “Identifiers”的 “App IDs”,点击“+”

出现以下界面:

App ID Description 是一个App ID的描述,就是一个名字,这个名字可以随便取

App ID Prefix 苹果已经帮我们填了,不需要我们填,可以看出,它是一个团队的ID

Suffix

App ID Suffix 有两个选项:

Explicit App ID :顾名思义,这里要填一个明确的 App ID,

什么意思呢?可以这么来解释:我们做项目时的Bundle Identifier (Bundle ID)是用来标示我们的app的。我们的App ID也是用来标示我们的app的。这两个有什么联系呢?Explicit App ID 就是要我们确定一个唯一的Bundle ID,用来标示我们的 app,使它有一个固定的身份。可以发现,当提交应用到苹果时,如果我们一开始没写Explicit App ID,苹果会自动帮我们生成一个与我们发布时填的一样的Bundle ID 到我们的App ID中。

填写Explicit App ID 的格式为:com.companyDomain.appName

Wildcard App ID:顾名思义,这里要填一个通配符的 App ID 。意思就是,我们只需要填一个在所有应用都能试用的 App ID 就好了。

填写WildcardApp ID 的格式为:com.companyDomain.*

申请真机调试的时候,不是为了某一个应用去调试,而是为了所有的应用去调试,必须能适应每一个app,所以我们选择Wildcard

App ID。

com.companyDomain.* 的companyDomain 一般写公司的网址域名,也可以按需要写

看到如下界面,点击“Rgeister”后就可以生成App ID了

6.设备UDID的添加

如图,点击“+”,一个99美元账号(个人或者公司级)只能添加100台设备。

Name 自己取一个设备的名字,UDID约等于设备的身份证,可以在iTunes中查看

查看UDID

手机数据线连接电脑,打开iTunes

点击下图中的序列号处

填好 name 和 UDID后,点击continue 就可以看到如下界面,点击“Register”就可以在苹果上登记了。

7.描述文件的制作

描述文件分为开发和发布两种,此处以开发为例

开发模式需要选择之前创建的App ID(为哪个APP创建描述文件)、添加过得UDID(哪些手机可以运行APP)、以及开发证书(使用哪个证书来开发或者打包)。

发布模式需要选择之前创建App ID(为哪个APP创建描述文件)、以及发布证书(使用哪个证书来发布)。

选择Development后,点击“+”


选择App ID,如下图

勾选开发证书

勾选UDID对应的设备

下载到电脑

三、关于.p12文件

为什么要导出.p12文件?

当我们用大于三个mac设备开发应用时,想要申请新的证书,如果在我们的证书里,包含了3个发布证书,2个开发证书,可以发现再也申请不了开发证书和发布证书了(一般在我们的证书界面中应该只有一个开发证书,一个发布证书,没必要生成那么多的证书,证书一般在过期之后才会重新添加。)

如图:

这时候,再点击“+”时,就会发现点击不了开发证书,也就是添加不了开发证书:

我们的每一个证书都可以生成一个.p12文件,这个文件是一个加密的文件,只要知道其密码,就可以供给所有的mac设备使用,使设备不需要在苹果开发者网站重新申请开发和发布证书,就能使用。

注意:一般.p12文件是给与别人使用的,本机必须已经有一个带秘钥的证书才可以生成.p12文件,如图:

打开钥匙串,选择我们需要的证书,右击,选择“导出“iPhone Distribition:```”:

填写名字:开发证书填写:developer,发布证书填写:distribution

点击存储会设置证书密码,密码和验证填写相同内容,点击好。

如果出现以下图片需要输入电脑开机密码。选择始终允许,在桌面上就形成了一个.p12文件了:

证书:


在别人电脑上开发,必备两个文件

该证书导出的“.p12”文件。

苹果开发者中的与“证书”对应的“描述文件”

如果需要用于开发的,那么需要这两个文件:

.p12文件本身就是一个加密的证书,所以用这两个文件就可以让其他mac设备使用了:

拿到这两个文件后,依次双击“证书”,“.p12“文件(需要输入密码,密码就是当时生成.p12时设定的密码,),作用是加入钥匙串中,使我们的电脑具备开发的证明,”描述文件“(作用是置于xcode中,让xcode知道我们开发的合法性),添加完后就可以使用了。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,324评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,303评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,192评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,555评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,569评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,566评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,927评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,583评论 0 257
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,827评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,590评论 2 320
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,669评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,365评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,941评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,928评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,159评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,880评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,399评论 2 342

推荐阅读更多精彩内容