好久没有写博客了,前两天公司需要上架uniapp转ios的软件,网上的都好杂,目前我看到的没有任何一个完整的流畅的步骤,也可能是不一样的人,不一样的操作步骤,下面是根据我的操作流程总结的步骤,仅供参考,如果对你有帮助,记得三连
前提必看!!!!!!!!
以下所有操作步骤均在Mac完成,除了Hbuilder相关部分,记住一定要在Mac完成
当然还有香banana云编可用,但是需要花钱,打工人势必要用免费的,拒绝做冤种从我做起
如果只想看怎么操作,就跟着操作步骤走,如果想知道某个文件什么功能,在关键的地方会有XXX是什么?可以直接点击去看下面对应的简介,如图
一、 生成.p12文件 (私钥证书)
操作步骤
1. 全局搜索钥匙串访问
2. 开始创建证书
左上角菜单栏钥匙串访问—证书助理—从证书颁发机构请求证书…
3. 证书信息
用户电子邮箱地址:企业邮箱
常用名称:可以随便,我起的公司名
注意:请求选择第二项保存到磁盘
4. 点击继续就会生成一个CertificateSigningRequest.certSigningRequest文件
CertificateSigningRequest.certSigningRequest文件是什么?
5. 打开苹果开发者官网先登录,然后依次点击头像 — account
6. 开始生成证书
7. 创建证书
点击certificates(证书)旁边的加号
8. 选择版本
选择 Apple Distribution(苹果发行版本)点击 Continue
9. 选择CSR文件
选择刚才在钥匙串访问中生成的 CertificateSigningRequest.certSigningRequest(CSR文件)然后点击Continue
10. 生成distribution.cer文件
自动帮你生成一个distribution.cer文件,点击Download进行下载,然后双击那个文件就会钥匙串访问中生成一个证书
11. 证书密钥对照(保证和截图一样才有可能成功)
打开钥匙串访问选择证书菜单(恕我实在无法给各位展示证书信息,马赛克部分就是你账号注册时的公司名称)但是注意,证书下应该会有一个对应的专用密钥,这个密钥的名称就是你刚刚生成CSR文件的时候填写的那个名称,如果没有则是不对的,如果没有的话,目前太忙还没摸索,烦请摸索出来的大佬留下你的评论,我会及时更新博文
12. 下载Apple WWDRCA G3.cer
现在的证书目前是不受信任状态,右键应该是无法导出,各位可以试试,如果可以应该可以免去下载Apple WWDRCA G3.cer这一步,否则就先去Apple PKI下载一个Apple WWDRCA G3.cer这个文件,双击之后就会出现一个Apple Worldwide Developer Relations Certification Authority证书
Apple WWDRCA G3.cer是什么?
13. 导出
下载好G3证书之后随着就会发现你下载的证书变成此证书有效,然后就能导出了
14. 点击导出,开始导出.p12文件
.p12证书是什么?
15. 点击保存后输入密码(注意!!!!!!!!注意!!!!!!!)记住这个密码,别忘了
16. 输入密码之后,再输你电脑的密码,就会得到一个证书.p12文件,保留好这个证书文件,至此.p12及第一部分搞定(对应Hbuilder中的私钥证书)
17. 博客写的好累!!!!!!!(这次三连吧)
二、创建 App ID
1. 点击Identifiers(标识符)右边的加号
2. 选择App IDs,点击Continue
3. 选择App,点击Continue
4. 填写Description(描述)和Bundle ID,填好之后点击Continue,然后点击Register,至此你的App id就创建好了
三、创建发布描述文件
1. 点击Profiles右边的加号
2. 选择App Store Connect,你如果是别的系统的可以选择别的,然后点击Continue
3. 选择第二部创建好的APP ID,然后点击Continue
4. 如果你有多个证书会让你选择对应的证书(如果没有这一步无所谓,直接下一步)
5. 生成.mobileprovision文件
命名,没有规范,想起啥名都可以,然后点击Generate,然后应该就是下载.mobileprovision这个文件了,我已经有了所以就不重新下载了,那一页跳不过去了,但是应该就是再核对一下信息然后下载就行了
.mobileprovision文件是什么?
6. 至此XXX.mobileprovision文件也就创建好了,对应的就是Hbuilder中的证书profile文件,然后就可以去Hbuilder进行打.ipa的软件正式发行包了,但是你在手机上下载应该是打不开的状态
四、发布
1. 上传 .ipa 到App Store Connect(记得登录,不截图了)点击新建App
2. 填写软件基本信息
3. 然后就能在你的APP库中看到了
4. 编辑软件基本信息(交给产品做吧)
5. 构建软件版本
在app Store下载Transporter然后登录
6. 如果已经有打包过的软件则直接展示,我忘了没提交是啥样的了,后续再补截图,点击加号,找到你从Hbuilder下载好的.ipa软件包
7. 然后就是编译构建了,然后点击交付,然后回到App Store Connect
8. 然后可以看到构建版本了,填写完对应的信息,即可添加以供审核了,后续就是产品的事情了
一、生成CertificateSigningRequest.certSigningRequest(CSR)文件 是什么有什么用?
简介
1. 文件功能及其目的:
它本身不是一张证书(不能用来签名或加密),而是一个标准的请求文件。我们可以从“长什么样”和“用来干嘛”两个角度来理解它。
2. 这个文件里有什么?(打开看看)·
虽然它的后缀是 .certSigningRequest,但如果你用文本编辑器打开它,会看到类似这样的内容:
这串“乱码”其实是用 Base64 编码过的数据,里面包含三样东西:
- 你的公钥:这是最关键的部分,就是那把可以公开的“钥匙”。
- 你的身份信息:你填写的电子邮件、常用名称(通常是你的名字或 App ID)和国家/地区。
- 你的数字签名:用你的私钥对该文件内容做的签名。这能向证书颁发机构证明:“这确实是我本人发起的请求,并且我拥有对应的私钥。”
3. 这个文件具体用来做什么?
它的唯一使命就是提交给证书颁发机构(CA)去兑换一张真正的数字证书。具体在什么场景下要用到它呢?
向苹果申请开发者证书:这是最常见的用途。在苹果开发者网站(Developer Center)上申请开发或发布证书时,网站会要求你上传这个 CSR 文件。苹果收到后,会用它的私钥对你的公钥进行签名,最终生成一个 .cer 证书文件返还给你。
申请服务器或邮件加密证书:在一些企业内部网络或邮件系统中,如果你需要向公司内部的 CA(如 Active Directory 证书服务)申请一张用于网站 HTTPS 或邮件签名的证书,也需要提交这个文件。
作为备份凭证:这文件本身不保密(因为它只包含公钥和身份信息,私钥还在你电脑里)。你可以保存它,以便在需要申请同类证书时直接上传,而不用每次重新生成一对密钥。
4. 关键信息
这个文件本身可以随便给人看,但生成它的过程在你电脑里留下了一样绝对不能丢的东西——私钥。
私钥在生成 CSR 的瞬间就被保存到你的“钥匙串”中了(通常叫 PublicKey 和 PrivateKey 对)。
如果你删除了钥匙串里的私钥,或者重装了电脑,那么即使你手里有这个 CSR 文件,也没有任何用处。 因为真正的“签名权”在私钥那里,你等于只有一把没有锁芯的钥匙。
5. 简单总结:
CSR 文件是“兑换券”,用它去换回证书;而真正决定你身份的是留存在你电脑钥匙串里的那把私钥。
这次三连吧!写了俩小时呢
二、AppleWWDRCAG3.cer是什么?
1. 简介
全称是“Apple Worldwide Developer Relations Certification Authority G3”,它就像是苹果开发者证书体系里的一环,关键作用就是连接你的个人开发者证书和苹果的根证书,让整个“信任链”变得完整
2. 为什么会“不受信任”?
首先,你的 Mac 或 Xcode 里已经预装了苹果的根证书(可以理解为最顶级的信任锚点),但可能没有这个 G3 中级证书。
当你的开发者证书(由 G3 签发)出现时,系统要验证它是否可信,就需要找到当初签发它的那个“上级”(也就是 G3 证书)。如果找不到,这个链条就断了,你的证书自然就会被标记为“不受信任”。
3. “下载并安装”做了什么?
这个过程简单来说,就是帮你把断掉的信任链条重新接上。下载 AppleWWDRCAG3.cer 并安装,就相当于在你的钥匙串里补上了这块缺失的中级证书。
一旦有了它,系统就能顺藤摸瓜,完成从“你的开发者证书” → “G3 中级证书” → “苹果根证书”的完整验证链。验证通过了,你的证书状态自然就从“不受信任”变为“受信”了。
4. 补充说明
区分版本:苹果会发布不同“代”的 WWDR 证书(如 G1, G2, G3 等),它们用于不同的目的或具有不同的有效期。G3 主要与软件签名相关,有效期至 2030 年。
三、.p12证书是什么?
1. 简介:
.p12 证书(也叫 PKCS#12 文件)可以理解为你的数字身份保险箱。它不只是一张证书,而是把 证书(公钥)和对应的 私钥 打包在一起,并用密码保护起来的文件。
2. 它里面装了什么?
一个 .p12 文件包含三样东西:
证书(公钥):相当于你的身份证,公开给所有人看,用来标识你的身份。
私钥:相当于你的指纹或私章,必须绝对保密。它用来证明“你就是你”(比如签名、解密数据)。
密码:打开这个保险箱的钥匙。没有密码,无法提取里面的私钥。
3. 主要用来干什么?
在苹果开发中,.p12 文件是在设备间迁移或备份开发者身份的“万能钥匙”。常见的场景是:
多设备开发:在一台 Mac 上生成了开发证书,想换到另一台 Mac 上继续开发,直接导出 .p12 文件并导入新电脑即可,不用重新申请。
团队协作:把 .p12 文件发给同事(同时告知密码),对方就能在你的身份下打包和签名应用。
部署服务器:配置推送通知(APNs)服务时,服务器需要你的证书和私钥来建立加密连接,上传 .p12 文件是常见的方式。
4. 与 .cer 文件的核心区别
| 特性 | .cer(证书) | .p12(证书 + 私钥) |
|---|---|---|
| 包含内容 | 仅公钥(公开的身份信息) | 公钥 + 私钥(完整的身份信息) |
| 私钥 | 没有 | 有(用密码保护) |
| 用途 | 分发给别人,用于验证你的身份 | 自己私下使用,用于证明你的身份(签名、解密) |
| 安全性 | 可以公开,泄露无影响 | 必须绝对保密,泄露后他人可冒充你的身份 |
| 能否互转 | 可以。从 .p12 能导出 .cer,但反之不行(因为缺少私钥) | 可以。用钥匙串或 OpenSSL 从 .p12 导出 .cer |
5. 重要安全提醒
私钥是核心资产:.p12 文件就等于你的数字身份。切勿将其上传到公开代码仓库、网盘或随意发送。
密码要足够强:设置强密码,并妥善保管。
定期清理:不再使用的 .p12 文件应及时从系统中移除或安全销毁。
四、.mobileprovision文件是什么?
1. 简介:
.mobileprovision 文件是苹果iOS开发中的设备授权文件,也常被称为配置文件 (Provisioning Profile)。你可以把它理解为苹果官方颁发的一张“通行证”,它决定了你的App能在哪些设备上运行,以及能使用哪些苹果服务。
它本身是一个配置文件,包含了将你的代码、证书和设备绑定在一起的所有规则。
2. 它里面装了什么?
这个文件别看不大,内部结构实际上是一个加密签名的属性列表(plist),包含了三项最核心的授权信息:
App ID:指定这个配置文件适用于哪个App(比如 com.example.MyApp)。
证书列表:包含允许用来签名这个App的开发者证书(也就是之前聊到的.cer)。
设备列表:(针对开发/Ad Hoc类型) 明确列出允许安装该App的具体设备UDID。
当你在Xcode中运行或打包App时,Xcode会把这个文件嵌入到 .app 包里。当App在目标设备上启动时,系统会立刻检查:
“这个App的签名证书,在配置文件里吗?”
“这台设备的UDID,在配置文件里吗?”
如果检查不通过,App就会闪退,无法运行。它就像是App安装在设备上的“门禁卡”,缺了它或者信息不对,门就打不开。
3. 生命周期
配置文件不是永久有效的,它有明确的“有效期”,通常为1年。过期后,设备上已安装的App会怎样?
开发/Ad Hoc App:会闪退。因为苹果服务器会校验配置文件是否有效,过期即失效。
App Store 上架 App:不受影响。上架后的App不再依赖配置文件来运行,由苹果的App Store系统负责验证和分发。
4. 与 .cer 和 .p12 的关系
彻底理清这三者的分工,可以这样理解:
.cer / .p12(数字身份):证明“你是谁”。
.mobileprovision(授权文件):规定“你(这个App)能去哪里”。
它们的关系是互相绑定的。Xcode在打包时,会检查签名证书(.p12)是否在配置文件允许的证书列表中。如果两者对不上,打包就会失败。一个形象的比喻是:
.p12 是你的身份证。
.mobileprovision 是门禁系统的授权记录。
系统会同时检查“门禁(配置文件)里有没有你的名字(证书)”和“你是不是这栋楼的人(设备UDID)”,全部符合才能进门。
五、完结撒花*★,°*:.☆( ̄▽ ̄)/$:*.°★* 。
如果还有不懂的,先去问问AI,然后再来评论区留言,如果我答不上来的,看看其他大佬的播客吧
成就:
给个三连吧
推荐BGM:巴拉莱卡(The Rod)