苹果开发者证书生成和签名

前言

有些项目需要打包 iOS 的应用,众所周知任何跟苹果相关的东西都是有点复杂的,即使安装测试 App 到手机上也如此。
申请好 Apple Developer 账号以后,还需要做一些复杂的操作才能让 App 安装到手机上,借此机会记录一下。

添加 UDID 到白名单

所有 iOS 的设备都有一个 UDID(设备唯一识别码),可以理解成人的身份证号码,有了这个UDID,并注册到开发者后台,才可以安装测试用的 App 到手机上。
这个机制可以简单的理解成小程序中的体验者,需要在小程序后台中添加体验者的微信号白名单,才可以使用体验版小程序。

获取 UDID

获取UDID最常用的方法有两个。
一是通过电脑获取,将手机连接到电脑,如果是 Mac 的话,在访达中找到手机,如果是 Windows 的话,需要 iTunes 或者爱思助手之类的工具。 在手机名称下面的一行小字中查看 UDID,如果出现的不是 UDID,鼠标点击可以切换显示。 image.png?imageView2/2/w/1280

二是通过手机获取,用 Safari 浏览器访问:https://udid.sanfenmi.cn ,按照指引安装一个描述文件。
安装后打开系统设置,继续获取步骤,即可获取到设备的 UDID。

注册 UDID

在开发者后台首页,点击 Device: image.png?imageView2/2/w/1280

进入设备列表页面后,点击添加按钮,填写 Device Name(备注而已,可随便填写)、Device ID(UDID),即可注册成功。

image.png?imageView2/2/w/1280

注:每个开发者账号只允许注册100个设备。

注册 App

左侧菜单中进入 Identifiers 页面,并点击添加。
类型选择 App IDs,Bundle ID 填写一个唯一的包名,例如 com.sinkey.blog,需要注册的权限按自己的需求勾选,用不到的不要选择,否则影响上架审核,也可能在打包时遇到 各种各样不必要的问题。
通常建议勾选 Associated Domains(对接支付后跳回此App需要)Push Notifications(推送通知)

image.png?imageView2/2/w/1280

生成证书

左侧菜单中进入 Certificates 页面,并点击添加。

选择证书类型

证书类型选择 iOS App Development ,如果不是测试目的,而是是为了分发的话,选择 iOS Distribution

image.png?imageView2/2/w/1280

上传证书签名请求

此步骤需要上传一个证书签名请求文件(CSR)。

image.png?imageView2/2/w/1280

在 macOS 中,打开钥匙串访问,在菜单中,选择“从证书颁发机构请求证书” image.png?imageView2/2/w/1280

之后填写名称和邮箱,即可生成一个请求文件,记得选择存储到磁盘。 image.png?imageView2/2/w/1280

将生成后的文件,在开发者后台中上传,即可生成一个证书文件。 image.png?imageView2/2/w/1280

点击 Download 按钮,即可下载到本地(CER格式)

获取 P12 证书

在 macOS 的“钥匙串访问”中,左侧边栏中选择“登录”标签,顶部 Tab 中选择“证书”标签。
然后打开上一步骤中下载的证书文件,即可将证书导入到钥匙串访问中。

导入后,找到导入的证书,右键选择导出:
image.png?imageView2/2/w/1280

文件格式选择 P12:
image.png?imageView2/2/w/1280

然后给证书设置一个密码,后续签名 App 会用到:
image.png?imageView2/2/w/1280

注:如果导入了证书到钥匙串访问后,提示证书不受信任,访问此地址:https://www.apple.com/certificateauthority/ ,下载 Worldwide Developer Relations` 证书并导入到钥匙串访问即可。 image.png?imageView2/2/w/1280

创建配置文件

选择配置类型

左侧菜单中进入 Profiles 页面,并点击添加。
类型选择 iOS App Development,如果上面生成证书的时候,生成的是分发,那就在 Distribution 中选择: image.png?imageView2/2/w/1280

选择 AppID 和 证书

根据流程走,首先选择上面创建 App 时候填写的包名的AppID,下一步选择刚才生成的证书。

配置 UDID 白名单

选择最开始添加到开发者后台的 UDID 白名单列表,此处勾选 Device Name 即可,也可以全选。 image.png?imageView2/2/w/1280

完成

最后即可下载 .mobileprovision 格式的描述文件。
至此,在开发者后台需要做的事情全部完成了。

注:生成好配置文件后,如果需要重新添加新的 UDID 白名单,描述文件也需要重新生成。

UniApp 签名

在 HBuilderX 中,菜单栏点击发行->云打包,填写Bundle ID,选择描述文件和 P12 证书文件,并输入导出 P12 证书时设置的密码,即可开始打包。打包后可直接安装到手机。

其他 App 签名

例如轻松签,将 P12 证书文件和描述文件,通过文件导入到 轻松签 中,在文件列表中,先导入 P12 文件,再导入描述文件,即可导入证书。
导入后,将任意砸壳后或未签名的 .ipa 文件通过文件管理器导入到应用库,即可脱离电脑,使用手机直接签名安装。 image.png?imageView2/2/w/1280

发表评论
评论
大雄回复
2024-01-26 14:01macOSChromeIP:广东
妈的太高级了!!沙发!!
obaby回复
2024-01-26 16:30macOSChromeIP:山东
都是钱,啊哈哈哈
Dabenshi回复
2024-01-29 18:08Windows 10ChromeIP:北京
只有你能看懂了,我看到了好多蚂蚁在爬...
Mr.Chou回复
2024-01-27 20:20Windows 10EdgeIP:广东
外行人表示看不懂,溜了..
王光卫博客回复
2024-01-28 10:11macOSChromeIP:四川
原本发布AI类的,结果审核复制就算了
阿俊回复
2024-01-29 20:35Windows 10EdgeIP:广东
能ios开发的都是有钱的大佬。
关关回复
2024-01-30 10:23macOSChromeIP:江苏
白嫖甲方 哈哈哈