我最早做一款面向同行的小工具,因为一开始资质不全,没法走常规的官方上架,只能四处打听苹果签名的路子,那时候什么都不懂,只听人说企业签名入门容易价格低,就随便找了个渠道弄了,谁知道这一脚踩进坑里,大半年都没爬出来,那段时间掉签掉到我怀疑人生,每天大半的时间都在处理签名的问题,根本没心思打磨工具本身。
那时候每次用户找过来说app打不开,我就知道又掉签了,一开始一天掉个一两次,后来越来越频繁,有时候一天之内掉好几次,每次都要重新找服务商出安装包,再挨个通知用户重新下载安装,很多用户本来用得好好的,嫌麻烦就直接不用了,那段时间掉一次我就流失一批用户,别说做产品了,能留住现有用户都费劲。踩坑踩多了我才慢慢搞懂苹果签名的底层原理,其实不管是什么类型的签名,本质都是拿到苹果官方信任的证书,给我们的安装包做授权,让苹果系统认可这个app,可以正常安装打开,不同类型的签名用的是不同类型的苹果证书,规则不一样,所以稳定性和使用成本差得特别多。
最早用的就是企业签名,企业签名用的是苹果给企业开发者发的证书,本来是给企业内部开发的内部应用做安装授权用的,不用上架就能安装,所以才被用到第三方app签名上。企业签名也分不同类型,我最早用的是共享证书的企业签名,价格特别低,一个月只需要很少的钱,但是一个证书上面签了不知道多少个app,苹果的检测机制一旦扫到异常就会封掉整个证书,所有签过的app全部掉签,所以才会掉得这么频繁。后来听人说换独立证书的企业签名会稳很多,我就加钱换了独立证书,一个证书只签少量的app,被苹果检测到的概率确实低了很多,稳了好一阵,但是隔一段时间还是会掉,苹果扫到了证书一样封,掉了之后还是要重新签名重新发安装包,该折腾还是折腾。我那段时间补签重签的经历现在想起来都头疼,有一次假期服务商没人值守,掉签之后整整大半天没法处理,所有用户都用不了,等到服务商上班处理完,大半活跃用户都走了,那时候真的想过干脆放弃ios端算了,只做安卓得了。
后来有同行给我推超级签名,说超级签名比企业签名稳很多,基本不掉签,我那时候病急乱投医,赶紧换了超级签名。超级签名用的是苹果个人开发者的证书,每个证书只能绑定少量的设备,安装的时候自动把用户的设备信息加到对应的证书里,相当于每个设备单独拿了授权,所以确实比共享证书的企业签名稳很多。我换了超级签名之后,一开始确实好很多,很久都没出现过全掉签的情况,只有偶尔部分设备因为对应的证书出问题才掉,比之前天天掉签好太多了,但是用了一阵就发现问题,超级签名是按下载量收费的,每新增一个用户就要收一次费用,用户量慢慢涨起来之后,每个月的使用成本越来越高,对于我这种还没盈利的小工具来说,长期用下来成本压力特别大,而且哪怕是稳定的超级签名,也还是会出现证书被封掉签的情况,还是要通知用户重新下载,还是要折腾,只是折腾的频率低了很多。
对比下来,超级ios签名和企业签名各有优劣,共享证书的企业签名价格低,但是掉签太频繁,只适合那种短期几个人内部测试用用,正式对外开放用根本不行;独立证书的企业签名价格比共享高,长期用户多的时候比超级签名成本要低一些,但是还是有不小的掉签概率,没法保证长期稳定;超级签名比共享企业签名稳,比多数独立企业签名也稳,但是长期用户多了成本比企业签名还高,而且也没法完全避免掉签,还是需要补签重签,没法彻底省心。
后来我又试了H5封装,就是把网页套个app壳,做成看起来像原生app的样子,宣传说不会掉签价格还特别低,我试了一阵发现根本不行,H5封装的app调用不了原生功能,很多我做的工具特性根本用不了,而且打开速度慢,体验特别差,苹果也很容易检测到这种套壳app,用不了多久就会打不开,根本没法长期用,试了一阵我就放弃了。
直到后来有老开发者给我推TF签名,也就是TestFlight签名,是把app放到苹果官方的测试平台里,用户通过官方的测试平台下载安装,本质上是苹果官方认可的测试安装方式,根本不会掉签。我一开始还担心安装麻烦,用户不愿意弄,而且价格会不会特别高,问了之后才发现,价格比我用超级签名便宜很多,长期用下来成本比独立企业签名也高不了多少,我就抱着试试的心态换了TF签名,换完之后我才知道什么叫真正的稳定,换完之后大半年,我从来没有处理过一次掉签补签的问题,用户一次安装之后,只要不删除app,就能一直用,更新的时候直接在平台里更,用户点一下就能更新,根本不用我挨个通知重新安装。我原来用企业签名的时候,每天早上起来第一件事就是打开自己的app,看看能不能正常打开,生怕又掉签了,用了TF签名之后,我有时候大半个月不碰签名的事,也从来没有用户找过来反馈说app打不开,原来天天处理掉签问题,现在能把所有的精力都放在打磨工具功能,运营用户上面,那种轻松感真的没法说。
慢慢工具做起来了,资质也齐了,我就申请了官方上架,把工具放到了App Store里,官方上架当然是最稳定的,用户直接在应用商店就能搜到下载,更新也自动更,根本不用操心签名的问题,但是官方上架的门槛真的很高,审核特别严,第一次申请根本过不了,改了好多次才通过,还需要齐全的资质,每年也要交开发者年费,对于刚开始做,只是小范围使用的开发者来说,门槛真的太高了,不是所有人都能做的,我也是用了很久TF签名稳定攒用户攒资质之后,才有条件做官方上架。
这么多年踩过这么多坑,不同签名的价格和渠道差别真的很大,那种不知名小渠道的共享企业签名,价格很低,但是稳定性根本没法保证,掉签了有时候服务商都联系不上,补签都没人给你弄;正规一点的渠道做独立企业签名,价格会高不少,大多承诺补签,稳定性比共享好,但是还是没法避免掉签;超级签名一般是按下载收费,小用户量的时候成本还可以,用户涨起来之后成本就很高了,正规渠道的超级签名掉签概率比企业签名低,但是还是会掉;TF签名一般是按周期收费,价格中等,稳定性几乎是百分百,很少会出问题,只要名额没满就能一直用,满了换一个也很方便;H5封装价格极低,但是体验差稳定性差,只适合那种临时过渡用用,根本没法长期用;官方上架一次性的成本比较高,每年还要交年费,过了之后就很稳定,但是门槛高,不是谁都能上。
我之前的重签补签经历,真的不想再回想,最早用共享企业签名的时候,手机里存了好几个不同版本的安装包,微信通讯录里大半都是我的用户,每次掉签就要一个个发消息通知,遇到不会安装的还要远程教,一天下来啥都干不了,后来换了独立企业签名,补签速度快了,但是掉了还是要重新装,还是要通知,换了超级签名之后,掉签只会掉一部分设备,不用全通知,但是还是要折腾那部分掉签的用户,只有用了TF签名之后,我就再也没做过重签补签,再也不用天天盯着用户的消息,生怕有人说app打不开,这种稳定带来的轻松,真的是之前用各种掉签签名没法比的。
现在我不管做什么新的小工具,一开始都会先做TF签名,小范围测试运营,攒够了资质和用户再申请官方上架,TF签名的稳定性完全能满足我日常的需求,也不用操心签名的问题,能专心做产品。这么多年踩坑踩下来,才找到适合自己的稳定方案,从天天掉签天天折腾到现在完全不用管签名,这种变化真的太大了,原来以为苹果签名就是一定会掉签,只是掉得多掉得少的区别,没想到能有这么稳定的方案,对于很多暂时没法上架官方App Store的开发者来说,找到稳定的签名方案,真的能省太多心,能把更多的精力放在产品本身上面,而不是天天处理掉签补签的琐事。