做独立iOS开发快六年,大半时间都在跟各种签名打交道。我的项目大多是小众工具,要么碰了苹果的隐私红线,要么没必要花几万块办版号上AppStore,所以签名分发就是活下去的根本。最早听圈里人说超级签名零掉签、按设备收费灵活,一头扎进去才发现,超级iOS签名缺点多到我能翻遍聊天记录吐三天槽。
刚入行那年做了个壁纸类小工具,攒了几百个种子用户,急着分发测试,问了一圈报价,对比下来选了个三毛五一台设备的超级签名,花了两百块买了五百台额度,以为捡了大便宜。那时候我连P12证书是什么都搞不懂,服务商说给我弄好一切,我只需要把打包好的IPA传上去就行,我就乖乖照做了。不到三天,早上起来微信炸了,二十多个用户说APP打不开,点图标就弹验证失败。我赶紧找服务商,对方说证书被苹果封了,要补签得重新买额度,之前的额度作废,不退钱。那时候我才搞懂,什么是P12证书使用的规则。P12其实就是开发者证书的导出格式,包含了证书私钥,正规的签名要么你自己提供P12,要么服务商给你单独绑定证书,而大部分低价超级签名,都是几百个开发者共享一个P12,甚至用的都是黑产盗用的个人开发者账号,苹果稍微一扫描就直接封,封了之后所有绑定这个证书的APP全掉签,服务商根本不会给你补,最多就是踢皮球。
这些年跑过不下二十个签名渠道,不同渠道的真实价格我门儿清,不存在什么低价又稳定的好事。超级签名现在市面价一般是八毛到一块二一台设备,那些低于五毛的基本都是共享证书黑号,踩坑概率百分之百。企业签名分共享版和独立版,共享版一个月一百到三百,独立独签一个月一千五到两千五,贵是真贵,稳也是真稳。TF签名一般按年或者按安装额度收费,普通IPA包过审的话,一年八百到一千二,比稳定企业签名便宜点。要是自己做小范围内测,那就买苹果官方的个人开发者账号,一年688,自己生成P12自己绑UDID,最多100台设备,够小团队内测用,这个价格是苹果定的,没什么水分。我前前后后花在签名上的钱快两万了,算下来最便宜的其实从来不是低价超级签名,掉一次签丢的用户都比省下的签名钱贵。
很多刚入行的开发者搞不懂设备签名原理,其实说穿了很简单,iOS能安装不上AppStore的APP,本质都是苹果允许开发者把测试设备的UDID绑定到开发者账号的设备列表里,只有在列表里的设备才能通过验证安装APP,不管是什么签名,都绕不开这个规则。UDID绑定这个步骤,超级签名吹嘘说不需要用户提供UDID,其实就是做了个自动获取接口,用户点击安装的时候自动拿到UDID,自动上传到开发者后台绑定,不是真的不需要UDID。超级签名用的都是个人开发者账号,苹果官方本来就限制一个个人账号最多只能绑定100台设备,那些号称一个账号能绑几千台的,要么是用了违规手段绕限制,要么就是把多个账号拼起来给你用,只要其中一个账号被封,对应绑定的设备就直接掉签,你根本没法提前预知。我做H5封装的IPA帮朋友分发那回,就碰到过UDID获取失败的问题,苹果改了接口之后,很多小服务商的超级签名获取不到UDID,用户安装一半就报错,一天能有十几个安装失败的,用户烦,我更烦。
说到证书分发机制,苹果的证书本来就分三六九等,个人、公司、企业,不同证书的权限不一样。企业证书本来是给企业内部做内测用的,不需要绑定UDID,任何设备都能安装,所以才被用来做外部分发,但是苹果对企业证书查得越来越严,要是一个证书挂了太多违规APP,或者下载量突增,直接就封证书。很多共享企业签名就是几百个IPA共用一个P12证书,只要有一个APP违规被查,整个证书所有APP全凉,这就是共享签名便宜但是天天掉的原因。我后来自己出过血,买了个企业账号,自己保管P12证书,只签自己的两个APP,控制每天的下载量,不碰明显违规的内容,两年多也就掉过一次,还是苹果误杀,申诉之后第二天就回来了,比找共享签名稳一万倍。P12证书使用还有个坑我也踩过,一开始不懂,同一个P12证书签好几个不同的IPA,结果一个被封,所有的一起完蛋,后来才知道,最好一个App对应一个证书,不要共用,能大大降低被封的概率。
掉签补签那阵子,我真的快熬垮了。前年做了一个给线下中小商家用的收款辅助工具,一共三百多个付费商家在用,那时候图省钱,找了个便宜的超级签名,那天周一早上,我打开手机一看,九十多条未读消息,全是说APP打不开的。我赶紧联系服务商,服务商说证书被封,正在补,补完要用户重新安装,我那段时间天天抱着手机,一个个给商家发新的安装链接,碰到不会弄的还要视频教,有些商家要UDID,我还要一步步教怎么查,整整折腾了四天,有十几个商家直接退了费,说太麻烦不用了,那一次损失的钱,比我三年的签名钱都多。从那之后我就下定决心,再也不碰低价超级签名,选签名永远把稳定放在第一位。
现在我手里的几个项目,都是分场景选签名,反而省了很多事。一百人以内的内测,我就用自己的个人开发者账号,自己生成P12,一个个绑UDID,一年688,从来没掉过签,稳得不行。用户在一万以内,能过审的,我全部弄TF签名,TF就是苹果官方的TestFlight测试分发,本来就是苹果允许的,只要过了审核,基本不会掉签,最长能用一年,到期了重新提交一下就行,用户安装也方便,点个链接就能直接在TestFlight下载,不需要手动信任证书,体验比超级签名好太多。我那个收款工具现在就放在TF,快两年了,就掉过一次,还是一年有效期到了,重新提交了一下,用户都不用重新安装,直接更个新就好,再也没有用户找我说打不开。要是真的过不了TF审核,用户量又大,我就弄独立企业签名,自己攥着P12,不共享,虽然贵一点,但是稳定,算下来反而比天天补签的超级签名便宜。
很多人问我为什么不努力做AppStore上架,不是不想,是很多小众工具真的不合适,我做过一个广告拦截的Safari插件,刚上去不到一周就被下架了,说侵犯用户隐私,还有H5封装的本地服务APP,很多都涉及线下交易,根本过不了AppStore审核,所以签名分发就是刚需,没法避免。超级签名最大的缺点,就是你永远没法掌控,证书账号都在服务商手里,他说封就封,你连备份都没法做,掉了签只能听凭人家摆布,补签要钱,不补就丢用户,这种被动的滋味,我真的不想再尝了。还有不少不良服务商,会偷偷在你IPA签名的时候插广告、留后门,你把包给了他,他改了你都不知道,我之前就碰到过,我的工具打开先弹服务商的推广广告,找他理论,他说这是签名的服务费,不给就停掉我的分发,我只能连夜换渠道,浪费了好几天时间。
还有就是额度暗坑,我之前买过一千台设备的超级签名额度,才用了三百多台就说额度用完了,要再加钱,后来才知道,服务商偷偷把剩下的额度卖给别的开发者了,你买了额度也不是全给你用,人家想怎么用就怎么用,你根本查不到。这种暗坑防不胜防,只有等你用到的时候才会发现,那时候钱已经交了,说理都没地方说。
前阵子还有个刚做独立开发的小兄弟找我,说他做了个H5封装的IPA,要找签名,问我有没有便宜的超级签名推荐,我给他翻了我之前掉签的聊天记录,给他算了我这些年踩坑花的钱,他听完放弃了买低价超级签名的想法,找我帮忙弄了TF签名,昨天给我发消息,说半个多月了,没有一个用户说安装失败或者打不开,推广起来省心多了。我靠在椅子上喝茶,看着电脑里刚打包好的新工具包,想着要是刚入行的时候有人跟我说这些掏心窝子的话,我也不用白扔那么多学费,走那么多弯路。