【转】iOS-浅谈revoke证书对App的影响

本文详细解析苹果证书管理流程,包括生产与测试环境证书撤销的影响,私钥丢失原因及解决办法,以及团队中证书文件的正确管理方式。了解如何避免和解决missingprivatekey错误,确保应用程序在不同设备上的正常安装。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

参考资料:证书-来自苹果官方的介绍

revoke证书对生产、测试环境的影响
(1)revoke生产环境证书是不会影响已上架的app。
(2)revoke开发环境证书,则安装过该证书的app的用户将无法打开该app了,并且一点击app会出现闪退现象。这时就需要开发人员重新生成开发证书后打包app了。

Missing private key出现的原因
(1)忘记mac开机密码,在开机时进入终端重设密码,会导致私有key丢失。
(2)证书生成的源电脑不是你所用的电脑,要向源电脑请求p12文件和描述文件。具体可见“在团队中,证书文件管理”。

在团队中,证书文件管理
用XCode打包时,有时系统会提示“missing private key”等错误。打开钥匙串,在“登录”选项查看种类为“证书”的名称,是否含有三角符号,没有代表缺失private key 。如下图:

在别人的电脑上要成功安装,须具备两个文件
(1)该证书导出的“.p12”文件
(2)苹果开发者中的与“证书”对应的“描述文件”。(描述文件是.mobileprovision格式的文件)

个性化保存证书设置:

from:https://blog.youkuaiyun.com/samuelandkevin/article/details/80406344

在 UniApp 中配置 iOS 证书进行应用打包和发布,是 iOS 应用上线 App Store 或进行真机测试的重要环节。以下是完整的配置流程: ### 3.1 创建 Bundle ID 和证书 在开始配置之前,需要在苹果开发者平台创建应用的唯一标识符(Bundle ID)和相应的证书。 1. **登录苹果开发者平台**:访问 [Apple Developer](https://developer.apple.com/),进入 **Certificates, Identifiers & Profiles** 页面。 2. **创建 Bundle ID**: - 在 **Identifiers** 菜单中选择 **App IDs**,点击 **+** 号创建新的 App ID。 - 输入描述名称,选择 **Explicit App ID**,并填写应用的 Bundle ID(例如:`com.example.myapp`)。 - 启用所需的服务(如推送通知、关联域名等),然后提交创建[^1]。 3. **生成证书请求文件(CSR)**: - 打开 Mac 上的 **钥匙串访问**(Keychain Access)工具。 - 进入 **钥匙串访问 > 证书助理 > 从证书颁发机构请求证书**。 - 填写开发者邮箱,选择“保存到磁盘”,生成 `CertificateSigningRequest.certSigningRequest` 文件。 ### 3.2 创建和下载证书 4. **上传 CSR 文件并生成证书**: - 在 **Certificates** 页面点击 **+** 号,选择证书类型,如 **iOS Distribution (App Store and Ad Hoc)**。 - 上传之前生成的 `.certSigningRequest` 文件,系统将生成证书- 下载生成的 `.cer` 文件(例如:`ios_distribution.cer`)并双击安装到钥匙串中。 5. **导出 P12 格式的证书**: - 在 **钥匙串访问 > 我的证书** 中找到刚刚安装的证书- 右键选择 **导出**,格式选择 **Personal Information Exchange (.p12)**。 - 设置密码并保存为 `distribution.p12` 文件,该文件将在 UniApp 打包时使用。 ### 3.3 创建 Provisioning Profile 6. **创建配置文件(Provisioning Profile)**: - 在 **Profiles** 页面点击 **+** 号,选择适当的配置文件类型(如 **App Store** 或 **Ad Hoc**)。 - 选择之前创建的 Bundle ID 和证书- 设置配置文件名称并下载 `.mobileprovision` 文件(例如:`myapp_distribution.mobileprovision`)。 ### 3.4 在 UniApp 中配置证书和配置文件 7. **配置打包参数**: - 打开 HBuilderX 或命令行工具,进入项目打包设置。 - 在打包配置中上传 `.p12` 证书文件并输入导出时设置的密码。 - 上传 `.mobileprovision` 配置文件。 - 确保 Bundle ID 与苹果开发者平台中创建的一致[^1]。 8. **执行打包操作**: - 在 HBuilderX 中选择 **运行到手机** 或 **打包原生 iOS 应用**。 - 如果配置正确,将生成 `.ipa` 文件,可用于上传到 App Store 或安装到测试设备上。 ### 3.5 更新过期证书(如需) 9. **撤销旧证书并重新生成**: - 如果证书已过期,在苹果开发者平台找到旧证书并点击 **Revoke**。 - 使用相同的 CSR 文件重新生成证书,下载 `.cer` 文件并重新导出为 `.p12` 文件。 - 更新 Provisioning Profile 并重新上传到 UniApp 打包系统[^3]。 ### 3.6 配置 App 图标和启动图 10. **添加 App 图标**: - 在 HBuilderX 中进入项目配置页面,上传符合 Apple 要求的 App 图标(尺寸包括 60x60pt、180x180pt 等)[^2]。 - 系统将自动生成适配不同设备的图标文件。 11. **配置启动图(Launch Screen)**: - 可选择使用 Xcode 项目模板或上传自定义的启动图资源。 - 启动图应适配不同屏幕尺寸(如 iPhone X、iPhone 13 Pro Max 等)。 ### 3.7 其他配置(可选) 12. **配置 Associated Domains(可选)**: - 如需启用通用链接(Universal Links),需在苹果开发者平台启用 **Associated Domains** 服务。 - 在 `Entitlements` 文件中配置如下内容: ```json { "applinks": { "apps": [], "details": [ { "appID": "TeamID.com.example.myapp", "paths": ["/ulink/*"] } ] } } ``` 确保 `TeamID` 与苹果开发者账号中的 Team ID 一致,`BundleID` 与应用一致[^5]。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值