那会儿我正替客户维护一个本地政务类H5封装APP,用的是某家标榜“永久稳定”的超级签名服务。结果它在我眼皮底下,像被抽掉骨头一样软塌塌地瘫了。
先说价格吧。最早2021年我自建签名通道时,买一个苹果开发者账号花了688美金(含税),自己配证书、导描述文件、重签名IPA,折腾三天,掉签周期平均14天。后来转做中间对接,去年帮教育机构批量签32个定制APP,走的是深圳一家工作室的渠道:单设备年费296元,但要求绑定Apple ID+设备UDID双认证;今年换了一家杭州公司,报价变成按月计费——首月188,第二月起涨到238,理由是“iOS 17.4后证书吊销加速”。最离谱的是上个月临时救急,客户要赶在家长会前上线一个问卷工具,我半夜加急找人签,对方甩来个链接让我填37台设备信息,收款码扫完才告诉我:“你这批次用的是企业证书,掉签概率高,我们只保72小时。”收了我5900块。我没还价,因为当时会议室投影仪已经连上了iPad,校长就坐在我斜后方。
技术原理?别听那些公众号讲得玄乎。本质就三根线:苹果开发者账号是总闸门,它能生成两种关键凭证——开发证书(dev)和分发证书(in-house / enterprise)。普通用户装不了dev签名的包,必须靠超级签名这种“曲线救国”:把APP用企业或AD-HOC证书签名后,再通过一个伪装成“企业级下载站”的网站封装页面,把安装逻辑藏进JS里,利用Safari的隐式信任链触发安装。每次用户点“安装”,其实是在调用苹果系统底层的mobiledevice服务,校验证书是否被苹果吊销、设备是否在描述文件白名单里、Apple ID是否被风控。对,就是那个ID——我上个月栽在这上面。给一家律所签的合规审查工具,用了他们行政部统一注册的Apple ID(邮箱是admin@xxx.com),结果第5天开始陆续报错:“此Apple ID已被限制用于安装企业级应用”。查日志才发现,苹果后台悄悄把该ID打上了“高频安装行为”标签,连带封了整个组织单位的iCloud同步权限。最后是让律师们每人用自己的私人ID重新绑设备,才把签名链续上。
稳定性这事,真没法画饼。我手头现在跑着四套签名方案:
- 自研的AD-HOC通道(用自家开发者账号),掉签率最低,平均撑42天,但每次只能绑100台设备,扩容要买新账号;
- 合作的杭州企业证书池,响应快,支持H5封装+动态更新,但上周iOS 18 beta推送后,连续掉签3批,客服回我说“苹果在清理非App Store分发路径”,没补偿,只补签;
- 还有一家广州团队做的IPA超级签名,特点是支持断点续传安装(用户中途退出,下次点链接自动续),但有个隐藏坑:它强制所有APP共用一个Bundle ID前缀,导致客户想上架苹果Apple Store时,被拒三次——审核员说“与已存在企业签名应用冲突”。最后我们硬是把主包重打包、改了CFBundleIdentifier,又等了11天才过审。
说到上架……真怀念那个能直接拖IPA进Transporter的时代。现在苹果商城上架,光是准备材料就能耗掉两周:需要独立的苹果开发者账号(不能是企业版)、完整的隐私政策页、真实服务器日志、甚至还要提供APP内所有第三方SDK的授权证明。有次客户坚持要用某款国产统计SDK,结果苹果发来邮件问:“请说明为何不使用App Analytics替代?”我们写了三千字技术对比,附了三份竞品分析报告,才勉强过关。而就在同一天,他另一个没上架的内部培训APP,在超级签名下跑了117天零掉签——用的是同一套代码,只是编译时改了个签名配置。
当然也有爽的时候。上上个月,给社区养老中心做的用药提醒APP,62位老人用的都是旧款iPhone 8,系统卡在iOS 15.7。我试了三家签名服务,两家在iOS 15上直接不响应安装按钮,第三家——一个叫“青藤签名”的小团队,居然专门保留了一组iOS 15兼容证书池。他们老板微信回我:“老系统证书早停发了,我们是从2022年存档里扒出来的,只剩43个名额。”我抢到27个,给老人一台台手动点开Safari安装,没人教他们点“设置→通用→设备管理→信任”,我就蹲在活动室地板上,拿iPad录屏一步步演示。有个奶奶装完后突然拍拍我肩膀:“小伙子,这个铃声比我家闹钟还准。”那一刻我觉得,苹果签名这事儿,真不是什么黑科技,就是一堆人守着几行快过期的代码,在苹果的规则缝隙里,给真正需要的人搭一座桥。
现在我的桌面贴着张便签,上面写着:“别信‘永久’,信‘本次有效’;别押宝一个渠道,备三个证书源;最重要的是——每次签名前,先用自己的旧iPhone试装,别等客户说‘打不开’才想起看日志。”
毕竟,苹果签名从来不是终点,只是让一个想法,能真正在别人掌心里亮起来的第一秒。