凌晨3点17分,我盯着后台突然飙升的“安装失败”数据,手心全是汗。这是我们用超级签名分发的教育类APP,昨晚刚给300个种子用户发了新版本,现在后台显示有80台设备集体报错“无法验证开发者”。我抓起手机给技术负责人打电话,声音都在抖:“是不是又掉签了?这次损失算谁的?”
做在线教育APP三年,我以为自己早把“签名坑”踩遍了。最早用企业签名,128元/月的共享证书,掉签比闹钟还准时。有次周末搞促销活动,200多个家长刚充了值,APP突然打不开,客服电话被打爆,我抱着电脑在星巴克改签名,从下午2点弄到凌晨1点,最后赔了5000块优惠券才平息怒火。后来换了独立企业证书,2600元/月,稳了4个月,结果因为同行举报被苹果封了,损失了2万多块的推广费。
去年开始用超级签名,就是图它“每台设备独立签名”的稳定性。当时服务商报价1.2元/台/月,比普通渠道便宜20%,我暗自窃喜“捡到宝了”。第一次用的时候,我还特意让技术同事研究技术原理:用个人开发者账号的Ad-Hoc分发权限,把用户设备的UDID(唯一设备标识)写进描述文件,生成专属的IPA包。相当于给每台手机发一张“苹果官方通行证”,服务器验证UDID在账号的设备列表里,就允许安装。这比企业签名“一张证书万人用”靠谱多了,毕竟个人账号每年只能绑100台设备,苹果根本懒得管这种“小范围测试”。
前3个月用得那叫一个顺。我们给某私立学校做的内部学习APP,80个学生用了4个月,一次都没掉签。学校的信息老师还专门发微信夸我“终于找到不折腾的签名方式”,我当时还跟合伙人吹“以后所有内测都用超级签名”。直到这次凌晨惊魂,我才发现,便宜背后藏着太多隐形炸弹。
掉签的原因竟然是“UDID超量”。后来客服跟我说,他们为了多赚钱,把一个个人账号的100台设备名额,卖给了三个客户,我们占了60台,另外两个客户分别绑了30台和20台,结果总设备数超过100,直接触发苹果的风控机制。那天凌晨,我花了5个小时重新收集用户的UDID,补签的时候还担心家长会在群里骂街——好在大部分家长都知道我们做教育APP不容易,没太为难我,但还是有个别家长要求退费,最后赔了2000块才了事。
后来我学乖了,换了家报价2.1元/台/月的服务商,要求“账号注册满1年+无违规记录+单账号不超过80台设备”。他们后台能看到每个账号的注册时间、绑定设备数,还能设置“UDID绑定预警”,超过70台就自动提醒。虽然价格翻了一倍,但确实稳——现在我们的200个测试用户,用了8个月只掉签过1次,还是因为我误删了后台的UDID列表。
不过成本问题始终绕不开。按2.1元算,200台设备每月就是420元,一年下来5040元,比独立企业证书还贵。有次财务问我“能不能换成TF签名”,我只能苦笑:TF签名要苹果审核,我们每周迭代2次的节奏根本等不起,而且TF签名每季度只有1万次下载限额,我们的测试用户早就超了。
最让我头疼的是UDID收集的麻烦。有次给某培训机构做的直播课APP,50个学生都是小学生,家长根本不会操作“设置-通用-关于本机-标识符”查UDID。我只能让技术同事一个个远程协助,折腾了两天才收集完。后来服务商出了个“自动获取UDID”的SDK,集成到APP里就能直接采集,才算解决了这个问题,但又要多花500元/月的技术服务费。
现在回头看,超级签名对我们这种小范围、高频迭代的内测场景,确实比企业签名靠谱。但它不是“免死金牌”,选服务商比选价格重要,账号的“健康度”比“独立证书”更关键。上个月我们开始准备上架App Store,等审核期间还是得用超级签名,财务已经把我列入了“高风险支出名单”,但我跟老板说:“至少现在,我们的家长不会再因为‘应用打不开’在群里骂街了。”
昨天整理账单,发现今年花在超级签名上的钱已经1.9万了。突然想起刚创业时,我以为“做个APP最贵的是开发”,现在才明白,在苹果的生态里,连“让应用稳定运行”这件事,都要付出这么多试错成本。不过比起那些因为掉签流失的用户,这些钱花得还算值——至少现在,我们的测试用户再也没因为“应用打不开”在群里骂街了。