(六)登记设备及其 Device ID

作者:kim

时间:Apr 26, 2015

版权:非商用,自由转载,请保留原文地址

 

 

1. Device ID 就是苹果设备的唯一标识 Unique Device ID(UDID),每个设备都有且只有一个。

 

2. 要找到 UDID,可以把设备连接到 Mac ,打开 Xcode 的 Window -> Devices ,或者快捷键 shift + command + 2
在设备信息下面就可以看到 Identifier ,即 UDID 了!

 

E1468AE4-2EC2-4899-927E-95D8D7A4DF0E

 

3. 假如设备无法连接到 Xcode ,或者 Xcode 无法识别该设备,那么也可以打开 iTunes,在设备信息界面,点几下 ECID 位置,就可以看到 UDID 了,拷贝下来。

 

94821803-0C33-4B0B-BB53-26E7F603A771

 

4. Xcode 也是可以注册设备的,这里我们使用手动在网站添加的方法。访问 “Certificates, Identifiers & Profiles” -> Devices -> All ,进入设备登记界面。

 

4FA58DC6-59CB-44A2-BC21-DA01B62AC855

 

5. 点击 “manually register devices” 或者右上角的 “+” 号,进入添加设备号界面。

 

13ED32F0-D82B-48A9-87A2-50AF6BB7500F

 

6. 点击 Continue,再点击 Register,进入完成界面,会提示该 Device ID 已经注册完毕,并且提示你可以把它添加到 Provisioning Profiles 里面了!

 

1523A921-D191-4625-BFDB-604AAA963DF0

7. 当然,我们还可以在 Devices 列表对设备进行管理,比如修改或者删除。

 

 

Posted in iOS, Training | Tagged , , , , , | Leave a comment

(五)App ID 基础概念与创建过程

作者:kim

时间:Apr 26, 2015

版权:非商用,自由转载,请保留原文地址

 

 

1. 苹果的 App ID 其实是广义的,与 App 的关系是一对多的,表示用户开发的一个或者多个 App 集合。
你的 App 因为有了 App ID,才能安装在 iOS 设备上,以及连接 Apple Purchase、Apple Push Notification Service (APNs) 及其它服务。

 

2. 访问 “Certificates, Identifiers & Profiles” -> Identifiers -> App IDs ,就能看到创建 App IDs 的引导页,下面还有创建 “Pass Type IDs”,”Merchant IDs” 等服务类 ID 的功能。

 

C5B21D99-5173-4A0B-B638-153D93880822

 

 

3. 点击 “Register your App ID” 或者右上角的 “+” 按钮,到达 App ID 注册页面。这里我们填上 App ID 的描述名,为了简单我们使用 App 的名字作为描述,当然也可以用其他任何描述名。

 

61B9CB77-30B5-4A85-A1A7-55092024D529

 

4. 每个 App ID 由 “App ID Prefix” 和 “App ID Suffix” 组成,就是我们即将在下面看到的!

 

5. “App ID Prefix” 又称为 “Bundle Seed ID” 或者 “Team ID”,即 App ID 前缀。
它是在你创建 App ID 的时候,由 Apple 自动生成的 10 位随机唯一的数字+字符串,比如 WK12LFS12P 。
注意,它不需要在 Xcode 里面设置!

 

6. “App ID Suffix” 又称为 “Bundle ID”,由 “Organization Identifier” 和 “Product Name” 两部分组成!
Apple 建议的规范是 “com.domainname.applicationname”,比如 com.company.MyGreatApp(事实上我们必须这么做!)

 

72E14421-CA36-42B6-9801-8B045F06433D

 

第一个选项是 “Explicit App ID”,唯一的 App ID,用于唯一标识一个应用程序。APNs 及其它苹果服务,要求 App ID 拥有明确的 Bundle ID 才能使用!

 

F219CD9E-51A6-4D6C-BF13-BCA3F96BEC17

 

第二个选项是 “Wildcard App ID”,含有通配符的 App ID,用于标识一组应用程序。例如 “*” 表示所有应用程序。假如你有多个同一类的 App,它们之间共享相同的访问权限,或者它们只是个 Demo,或者内部 App ,而且不需要 iOS 额外的技术服务(比如 Apple Purchase)的话,那么也可以直接用模糊匹配,比如 com.company.* 或者干脆只是用一个 * 号。

 

BF3D3AEB-00C8-4E29-9B9E-C4917F7333F1

 

注意!这种 app id 仅仅是为了给开发使用的。仅能生成开发的 provisioning profile。发布的 provisioning profile 必须指定完整的APP ID!

 

7. 简单地说:Bundle Seed ID + Company Identifier + Product Name = App ID
App ID 例子:
WK12LFS12P.*
WK12LFS12P.com.company.*
WK12LFS12P.com.company.MyGreatApp

 

8. 再下面就是挑选你需要开启的 App Services 服务选项了。注意,其中大部分服务,都要求是 “Explicit App ID” 才能选择的!

 

28B9464C-DF93-4CD4-95E5-97340178E2BA

 

9. 填好所需要的服务后,点击 continue ,并观察生成的 App ID,注意其中的 Identifier 就是你这个 App ID 的最终形态!

 

8955240D-38AB-419E-9E21-355C7DB1501E

 

10. 点击 Submit 和 Done 按钮,App ID 创建成功,并且可以开始使用!

 

B82FD331-A2C9-4EBF-BD7C-F4D60DA5A9BF

 

 

Posted in iOS, Training | Tagged , , , , | Leave a comment

(四)创建开发者证书

作者:kim

时间:Apr 26, 2015

版权:非商用,自由转载,请保留原文地址

 

 

1. 访问 https://developer.apple.com/membercenter/ ,点击 “Certificates, Identifiers & Profiles” ,访问证书管理界面。

 

EA0CB25F-B614-424E-999D-7C98549DA26E

 

2. 首先选择 Certificates ,准备生成证书。

 

620D2086-144C-4EEA-A5D8-2411AC909CB5

 

3. 去到 Certificates -> All 页面,我们看到介绍了2种生成证书的方法,第一种是用 Xcode 自动为你创建证书,第二种是通过网站由用户手动生成。我们选择第二种方法,这样更有利于我们理解整个过程。

 

048F383E-D282-4BFD-8526-69FF7274299F

 

4. 我们点击 “Certificate Signing Request” ,开始选择证书的类型,我们选择第一个 “iOS App Development”,即 iOS 应用开发证书。其它还有 APNs 独立证书、AppStore 上线证书、Apple Pay 证书等等。

 

A0D52330-E4F1-44BA-B62A-AE5E97075C42

 

5. 在这个页面所有证书类型的下面,我们还会见到中间证书(Intermediate Certificates)的提示,提供用户下载 “AppleWWDRCA.cer” 的链接。
实际上这个文件就是 Apple 的全球开发者根证书(Apple Root Certificate)。
对,就是公钥,意义等同 CA 的根证书!通常是 Xcode 自己安装好的,当然也可以自己下载,并手动安装到 Mac 上面。

 

8AA35427-E169-4BD8-906D-E122D60BAE8E

 

6. 为了满足好奇心,我们手动安装下吧,点击 “Worldwide Developer Relations Certificate Authority” 就会下载到 “AppleWWDRCA.cer” 这个文件,双击就安装到了 Keychain 里面。

 

61F298CC-099C-4EC5-8AB0-71821BEF9BB1

 

7. 选择好证书类型后,点击 continue 进入请求证书页面,这里提示你如何在 Mac 上生成 Certificate Signing Request(CSR)文件。CSR文件简单地说就是你的公钥/私钥对!
注意,CSR 文件尽量每个证书都制作一次,并且用不同名称区分开,这样增加安全性!

 

823B8335-F6BE-4DD9-A7F9-8B0027D8E79C

 

8. 选择 钥匙串访问 -> 证书助理 -> 从证书颁发机构请求证书 ,“证书颁发机构” 指的就是 Apple ,简单地说就是,你要把你的 CSR 文件(公钥)上传到 Apple ,让它用私钥给你加密签发证书!

 

B31048CB-127B-4AFB-84FA-8A54DF2490C4

 

9. “用户电子邮件”那里必须填写你的用户账号邮箱地址,“常用名称”那里随便填个喜欢的。选择把证书保存到磁盘,点击继续。

 

EF7F6E83-DAFF-4A72-AA7C-F905B3E81D1C

 

10. 到达密钥生成界面,一般保持默认选项就行了,即2048位的 RSA 算法生成公钥/私钥对!

 

EC2783B3-4D4D-463D-ADBB-960394ADEB11

 

11. 点击继续,生成 “CertificateSigningRequest.certSigningRequest” 文件。简单地说,这个文件就是你的“数字签名+公钥”,用来上传给 Apple ,然后 Apple 用其私钥加密,这样就成功签发合格的证书了!

 

F52481AC-D30B-4207-B37D-FB6ABA1864E1

 

这个过程相当于使用以下 openssl 命令生成公钥/私钥对。
$ openssl genrsa -out private.key 2048
$ openssl req -new -sha256 -key private.key -out CertificateSigningRequest.certSigningRequest

 

12. 这时我们可以在 Keychain 看到公钥/私钥对。

 

4E915ACF-AE35-459C-82B9-2431D41FE8A3

 

13. 回到浏览器的 “Add iOS Certificate” 界面,点击 continue 来到生成证书界面,点击 “Choose File” 把刚才保存下来的 “CertificateSigningRequest.certSigningRequest” 上传到苹果。

 

AA503823-03B8-4647-8E5E-C51086905A1C

 

14. 点击 Generate ,证书就被 Apple 签发了。

 

25B59D70-D8B5-46B3-AF15-55D296329E9B

 

15. 点击 Download 保存好开发者证书,我们可以看到,证书是以标准的 X.509 格式来生成的!

 

8ED2F1A5-8B3D-4C1E-A93D-7DBDF7854214

 

16. 双击证书,安装到 Keychain 里面。

 

78D8FAEF-DAC8-4986-BB5C-97AC6E18BE89

 

17. 然后在 Keychain 里面查看下自己的证书吧。

 

E94B5D07-7BDF-4471-9CFE-E2622CE49B7E

 

18. 现在回到 “Certificates, Identifiers & Profiles” ,能看到你的证书记录显示在 Certificates 列表中!

 

38167318-2133-4E13-BE33-A67D58E5DE82

 

19. 在实际中,开发证书 ios_development.cer 被苹果根证书 AppleWWDRCA.cer 解密,得出真实的公钥 public key 出来!

 

20. iOS 设备以及 Mac 系统,都使用 CA 证书(AppleWWDRCA.cer)来判断 Provisioning Profile 中的开发证书的合法性。
1)若用 AppleWWDRCA.cer 公钥能成功解密出证书,并得到用户真实公钥(Public Key)和内容摘要(Signature),则证明此证书确实是 AppleWWDRCA 所签发,即证书的可信性!
2)对证书本身使用哈希算法计算摘要(Signature),若与上一步得到的摘要一致,则证明此证书确实未被篡改过,及证书的完整性!

 

 

Posted in iOS, Training | Tagged , , , , , , , | Leave a comment

(二)参加 iOS 个人开发/企业开发计划

作者:kim

时间:Apr 26, 2015

版权:非商用,自由转载,请保留原文地址

 

 

1. 有了账号之后,还必须参加 Apple 的“个人开发计划”或者“企业开发计划”,才能进行真机测试,也才能在 AppStore 上线。

 

2. 登录并访问 https://developer.apple.com/programs/ 准备购买开发计划。

 

C17CBD23-B643-4B56-B865-D54CF74E482A

 

3. 点击 iOS Developer Program 下面的链接。

 

6E9F1EA6-F661-40EB-8607-46B75FD44E14

 

4. 咬咬牙花 $99 买下!

 

6C5910F5-0461-4266-A6D6-CE1A96DBEA05

 

5. 点击上面的 Continue 后,会要求使用一个已创建的 Apple ID(参考《创建开发者账号》一章),或者新建一个账号。

 

9313F316-3580-47DD-ABE6-B6B26E4AFA51

 

6. 我们使用已创建的账号,跳到选择“个人开发计划/企业开发计划”的选择页面。

 

F4F63C42-F5B4-4BE3-B3EF-28F2855BC643

 

7. 个人开发计划 Individual 类型:
1)个人账号只能注册一个开发者账号
2)AppStore 也只显示个人 ID
3)如果要多人一起开发,只能通过共享账号,或者共享私钥与证书。

 

8. 企业开发计划 Organization 类型:
1)允许多个开发者协作开发,可以设置多个开发者账号
2)账号分4级权限管理
3)AppStore 显示团队/公司名称
4)如果要进行多人团队开发,可以通过:
a)共享私钥与证书,这个跟 Individual 一样
b)注册新用户的证书 Certificate,通过 Team Provisioning Profile,或者授权给该用户证书相关的 Provisioning Profile 来进行。

 

9. 我们以个人开发计划(individual)为例。

 

E4E01D9A-9BFD-4470-9E04-BD051BE6C576

 

10. 购买的过程涉及个人信息,就不详细说了,还可以用支付宝付款,相当方便!完成后在 Member Center 的证书中心看到相应的链接!

 

DBD7A9E6-5A72-408B-BB23-DC93B2567CB3

 

 

Posted in iOS, Training | Tagged , , , , | Leave a comment