iOS 证书类型及作用说明 账号证书与签名配置的完整解读

前阵子群里有个新手问了个很典型的问题:iOS 开发到底要哪些证书,开发证书、发布证书、推送证书、企业证书,看名字知道不一样,但什么时候用哪个完全没概念。这个问题值得认真讲一遍,因为证书选错,轻则装不上真机,重则打包传上去被拒。这篇把账号类型、证书分类、构成限制到签名配置一次讲清楚。

账号类型先分清

先分清账号,因为证书和账号是绑定的。免费账号用个人信息注册,只能开发测试安装,限制 3 台测试设备,不能上架,也没有 TestFlight、推送、支付、Apple 登录这些能力。个人账号 688 元一年,支持 100 台 iPhone 和 100 台 iPad,可以上架、用推送和支付。公司账号费用一样,用公司信息注册,能添加子成员,下载页显示公司信息。企业账号 199 美金,可以无限安装但走内部发布,不能提交上架,目前基本停止新申请。

四种证书的作用

证书按用途分四种。开发证书(iOS App Development)用于开发阶段把 App 装到真机测试,验证运行情况;发布证书(iOS Distribution)在开发测试完成后打包 IPA 上传 App Store 审核时必需;推送证书(APNs)用于服务器端和 Apple 通信发送推送消息,只服务推送功能,不参与打包编译;企业证书(In-House)只有企业账号能申请,给无需上架的企业内部应用签名,用户装上后需要信任证书才能使用,OA 系统、员工打卡、内部邮件这类场景用的就是它。

构成和数量限制

证书的构成和数量限制也容易搞混。一份签名配置由 p12 文件和 .mobileprovision 描述文件组成:p12 是证书载体,保存公私钥,打包时填的私钥密码就是它的;mobileprovision 描述文件承载授权配置,绑定 App ID 和测试设备。数量上,开发证书 p12 最多 2 个,发布证书最多 3 个,描述文件数量不限,一个 p12 可以对应多个描述文件。证书有效期一年,到期时间在开发者后台能查到。

签名配置怎么选

对应到实际流程:测试阶段,签名配置选开发证书加 Development 类型描述文件,装到真机跑;要上架了,切到发布证书加 App Store 类型描述文件,打包上传。用 Ipa Guard 这类工具做加固时也一样:混淆处理完要重签名装机验证,在 Ipa Guard 的签名配置里填证书和描述文件,测试用开发证书、发布阶段切发布证书,选错类型在安装或上传时就会报签名错误。Ipa Guard 支持直接配置签名参数对处理后的 IPA 重签名,装到手机验证混淆没有影响功能。

证书的维护

证书的维护相对简单:删除证书不影响已经上架的 App;测试 App 删掉开发证书后打不开,重新申请一个再装就行。证书到期也一样,不更新 App 就不受影响;要发新版本时,重新申请证书,用 Ipa Guard 重签名后打包上传。

四种证书各管一段,账号决定权限,证书决定用途,描述文件决定范围。把这三层关系理清楚,签名相关的报错基本都能自己定位。

相关推荐
九皇叔叔1 小时前
RHEL9 安装 MySQL 8.4.11.LTS 版本
android·mysql·adb
海兰1 小时前
【数据库】tdsql(MySQL )的事务隔离级别
android·数据库·mysql
哆啦A梦z1 小时前
Android BLE 实战:从小米手环 7 踩坑到完整连接框架
android
IKUN家族2 小时前
KMP全栈开发:从Android到AI Agent的技术演进与实践
android·人工智能
DsirNg2 小时前
一文讲清网络协议:从打开网页到理解 HTTP、HTTPS 与 TLS
http·https·dns·网络基础·入门教程·tls·web 安全
笑一下蒜了.2 小时前
Linux 存储多路径访问手册|multipath.conf 各配置段详解
android·linux·运维
凡泰AI2 小时前
如何通过小程序多端框架,让一个小程序同时运行在iOS、安卓、鸿蒙以及PC客户端,实现一次开发多端运行的效果
android·ios·小程序
sunywz2 小时前
【从零搭建物联网智能充电桩系统】4、Netty WebSocket 服务:小程序实时推送背后的长连接管理
物联网·websocket·小程序
一笑的小酒馆3 小时前
Androidiot扫地机器人设备详情页地图加载慢卡顿优化方案
android