那会儿我正给客户做一款健身打卡H5封装APP,用的是他们自己注册的苹果开发者账号(年费99刀,我替他们填的资料,连身份证照片都P了反光)。结果签名刚打完,客户发来截图:iOS 17.5.1系统,安装后打开闪退,重装又提示“未受信任的企业级证书”。我一边擦汗一边翻聊天记录,发现他上周还用同一个账号给另一款记账APP做过IPA签名,当时好好的。
这事儿真没法跟客户说“苹果爸爸心情不好”。
第一次接触苹果签名是去年冬天,在深圳华强北一家叫“极光云测”的小工作室。老板递给我一张泛黄的A4纸,上面手写三行字:“设备上限100台”“证书分发靠UDID绑定”“掉签周期看苹果风控节奏”。我没当回事,觉得不就是个签名嘛?直到我用自己那个99刀的个人开发者账号试签,签了32台设备,第二天中午起,一台接一台地崩——不是全崩,是错峰掉签,像定时炸弹。有台iPad Pro掉得最绝:早上还能开,下午锁屏再点就白屏,重启后直接回到主界面,图标还在,点进去就转圈三秒消失。
后来才搞明白,所谓“超级签名”,根本不是什么黑科技,就是把企业证书(In-House)或Ad Hoc证书,用脚本批量注入IPA包,再通过一个伪装成“配置描述文件下载页”的网站封装入口,让用户用Safari扫码安装。本质上,它绕开了App Store审核,但没绕开苹果的根服务器校验。每次APP启动,iOS都会悄悄连Apple的OCSP服务器查证书状态。一旦证书被吊销、或设备数超限、或同一Apple ID在24小时内频繁安装多个签名包——啪,掉签。
价格?坑得我到现在看见数字都心悸。最早找华强北那家,按设备收费:88元/台,包月续签;后来换了一家叫“星链签”的,说是“不限设备”,结果付款后才发现——不限设备,但限制Apple ID!一个账号最多绑5个ID,超了要加钱,每ID每月35元。上个月帮一个教育机构签127台iPad,他们用的是学校统一配发的Apple ID,结果第三天我就收到苹果邮件:“检测到异常分发行为”,紧接着所有设备集体失效。最后咬牙买了个“双证书轮换”的服务,3980元/季度,含2个独立开发者账号+自动轮签脚本,到账后对方发来两份PDF:一份是证书p12密钥,一份是带水印的《免责声明》——写着“掉签不退费,因苹果政策变动导致者除外”。
最魔幻的是稳定性。有次我用客户自己的苹果开发者账号做Ad Hoc签名,导出的IPA在测试机上跑得飞起,连后台音频播放都稳如老狗。结果推给终端用户后,一半人反馈“安装失败”,点开错误日志全是“Failed to verify signature with Apple server”。查了半天,发现是他们公司WiFi用了深信服上网行为管理,把OCSP请求(ocsp.apple.com)给拦截了。改成4G就正常。这种事,你写进文档里客户不信,非得让他亲眼看着同一台手机,连着公司网不行、连着隔壁奶茶店WiFi就行。
也有高光时刻。上上周,我用一个闲置的苹果开发者账号(是帮前同事代管的,他离职后忘了注销),做了个轻量版问卷收集工具,纯H5封装,加了个原生相册调用权限。签了436台设备,最长撑了68天没掉——因为压根没触发风控:所有设备都是不同地区、不同运营商、安装间隔拉得够开,甚至我手动改了每台设备的时区和语言设置。客户后来在家长会上演示,iPad横屏竖屏切换流畅,拍照上传零延迟。散会后三个校长围着我问:“这个……能加人脸识别签到吗?”我说能,但得重签,他们立刻掏出手机问“多少钱”。我没报价,只说:“先让我看看你们的开发者账号,是不是用过别的签名服务。”
说到账号,现在我手里攥着6个苹果开发者账号,3个是客户的,2个是合作方托管的,1个是我自己实名的。每个账号背后都是一堆故事:有个账号因为连续三个月没更新证书,被苹果自动归档,恢复要等72小时;有个账号绑了200多个UDID,结果苹果突然收紧Ad Hoc设备上限到100,硬生生砍掉一半设备;还有一个,客户自己在Xcode里瞎点,把Distribution证书删了,又不会导出Provisioning Profile,最后我远程教他重装MacOS才救回来。
现在我签包前必做三件事:第一,查该账号最近30天是否被吊销过证书(用苹果开发者中心的“Certificates, Identifiers & Profiles”页面翻历史);第二,确认客户提供的Apple ID没在其他签名服务里注册过(哪怕只是点过一次“允许通知”);第三,让客户把目标设备全部升级到最新iOS版本——不是为了功能,是为了避开某些旧系统里对OCSP校验更敏感的bug。
掉签还是会发生。但不再慌。
上周掉签,我直接把新包链接发过去,附言:“已轮换证书,这次用的是新账号的In-House证书,有效期到明年2月,您让IT同事把旧描述文件删了再装。”
客户回了个“OK”,五分钟后发来截图:图标亮了,点开,首页加载速度比上次快0.8秒。
苹果签名不是魔法,是精密的妥协。
它踩在苹果规则的裂缝里呼吸,靠的是对证书生命周期的理解、对设备行为的预判、对客户网络环境的敬畏。
贵?贵。
坑?坑。
但当一个老师用它在课堂上实时投屏学生答题数据,当一个社区护士用它离线采集老人血压记录再一键同步,当那个总掉签的iPad Pro终于在养老院活动室里,稳稳播完整段八段锦教学视频——
我知道,这玩意儿,还得接着签下去。
(全文共1683字)