我做了一款小工具给圈内同行做内部使用,一开始没打算上架App Store,就想着做个内测签名就行,谁知道刚开始一头雾水,踩了无数坑,掉签到崩溃,折腾了大半年才找到稳定能用的方案,中间的经历说出来都是泪,今天就把我的真实经历整理出来,给后来想做iOS内测的朋友做个参考。
最开始我不懂签名,只想着越便宜越好,去网上搜了一圈,找了个个人商家做的共享企业签名,才几十块钱一个月,当时我还觉得捡了大便宜,想着几十块钱能用一个月,太划算了,结果安装包发出去第三天,就有用户说应用打不开,图标灰了,我才知道这就是掉签。我赶紧去找商家,商家说没事,最近苹果查的严,给我补个签就行,我等着他补完发新包,赶紧通知用户重新安装,结果没到四天,又掉了,连着掉了三次,商家才跟我说,原来用的那个P12签名证书损坏修复不了,因为是共享证书,整个证书被苹果吊销了,要我加钱换独立证书才行,这时候我才明白,原来共享企业签名就是一堆不同的应用挤在同一个证书里,只要其中有一个应用违规被举报,整个证书都会被苹果封掉,P12证书是对应证书授权的私钥文件,证书在苹果后台被吊销了,就算P12文件本身没坏,修复了也没用,根本改不了苹果已经吊销授权的事实,所以那些说能修复已经被吊销的P12证书的说法,本质都是骗人的,只能换有效的新证书重新签名,这也是我踩第一个坑得到的教训。
那段时间我也搞懂了iOS签名的基本原理,其实不管哪种签名,核心都是拿到苹果官方认可的证书,给你的应用包做一次授权,让iOS系统认为这个应用是被允许安装的,才会让你打开,苹果后台可以随时吊销证书的授权,一旦授权被收回,签名就失效,应用自然就打不开,也就是大家说的掉签,而P12就是我们导出存储证书私钥的文件,要是证书本身出问题,P12自然跟着损坏,根本没法靠修复文件本身救回来,只能换证书重签。
搞懂原理之后,我开始挨个试不同的签名方式,挨个踩坑找最稳定的方案。第一个试的就是加钱换了独立企业签名,独立企业签名就是一个证书只放少量应用,不接违规内容,所以被封的概率低很多,价格比共享签名贵不少,我当时做的是四百多一个月,换完之后确实稳定了不少,半个多月都没掉签,我那时候觉得终于搞定了,结果不到一个月,还是掉了,原来企业证书本身就是苹果给企业做内部员工应用测试用的,本来就不允许对外给第三方应用签名,就算是独立证书,签名的应用多了,或者被人举报,还是会被苹果吊销,所以还是会有掉签的风险,只是比共享稳定很多而已。
后来我听朋友说超级签名稳定,就转去试超级签名,超级签名是用苹果个人开发者账号的证书来做签名,按安装设备的数量计费,一个设备安装一次算一次费用,我当时找的正规渠道,一块二一个设备,我那时候才一百多个用户,算下来也就一百多块钱,一开始用着真的挺舒服,超级签名因为每个个人账号最多只能绑定一百个设备,都是分散开的,就算一个账号出问题,也只会影响一百个用户,不会全掉,而且不会像共享企业签名那样一损俱损,所以稳定性比企业签名好太多,我用了三个多月都没怎么掉过签,只有几个用户因为换了手机重新安装才出了点小问题,补签也很快,那段时间确实省心不少。但是用了半年之后,我的用户慢慢涨到了快一千,累计下来的设备费用已经快两千了,而且只要有新用户安装就要付费,用户换手机重新装还要再算一次,长期下来成本越来越高,比企业签名还贵,而且我也遇到过一次坑,之前找过一个便宜的超级签名服务商,八毛一个设备,看起来便宜,结果不到一个月,服务商那边一半的账号都是黑号,被苹果封了,一下子好几百用户掉签,找他们处理也拖了好几天,最后还是我自己换了正规服务商才解决,所以超级签名虽然稳定,但是适合用户量不大,增长慢的项目,用户多了成本确实扛不住。
之后我又去试了TF签名,TF签名其实就是把应用放到苹果官方的TestFlight测试平台,让用户通过官方平台下载,本质是苹果官方认可的内测方式,所以稳定性特别好,我当时找服务商做的,一千块钱包年,比用户多了之后的超级签名便宜太多,做了之后两三天就上线了,我把大部分老用户都导到了TF,用了快一年,从来没掉过签,真的太稳定了。唯一的小缺点就是用户下载的时候需要先安装TestFlight,然后再下载我的应用,比直接下载ipa多两步,有些小白用户一开始会搞不懂,多解释两句也就会了,而且因为是苹果官方的渠道,用户不会有信任问题,也不会轻易出问题,只要你的应用不违规,苹果不会随便下架,真的比之前的所有签名都稳定,我现在大部分用户都放在TF,从来不用操心掉签的事,之前天天等着补签重签的日子一去不复返了。
我也试过H5封装,当时想着我的工具本来就有网页版,直接把网页封装成APP,省得我打包原生包,试了一下,确实快,不到一天就做好了,才花了五百多,但是用起来体验真的太差了,原生的推送功能用不了,调用手机相册权限也经常出问题,滑动卡顿,而且封装完还是要签名,该掉签还是掉签,本质就是套了个壳,根本解决不了签名的问题,很多用户打开还会弹出未受信任的提示,体验差到极致,我用了不到一个月就换掉了,真的不推荐,除非你就是做个简单的展示页,不需要任何原生功能,不然真的别碰。
我也动过直接官方上架的心思,要是能直接上架App Store,那当然是最稳定的,用户直接从应用商店下载,永远不会掉签,信任度还高,推广也方便,我当时花了六百八十八开了苹果开发者账号,自己提交审核,结果第一次就被拒了,说我的功能不符合规范,我改了三次,还是被拒,找代办问了一下,代办说我的这个类型要过审核最少要三千多服务费,还不保证过,我就是做个小范围的内部工具,赚点零花钱,犯不着花这么多钱折腾,所以最后还是放弃了官方上架,不过说实话,如果你的应用符合要求,能上架一定要上架,官方上架确实是最稳定的,没有之一,只要过了审核,一劳永逸,什么掉签补签的问题都不存在。
说到重签和补签的经历,我真的有一肚子话要说,最开始用共享企业签名的时候,一个月能掉十几次,我每天一打开微信就能看到用户说应用打不开,那时候找的商家又是个人,经常半天不回消息,有时候周末掉签,周一才能补上,中间两三天用户用不了,流失了好多一开始跟着我的老用户,有一次过年,商家直接消失,把我拉黑了,我的应用掉了整整一周,我到处找新的服务商,大过年的好多都放假,急得我睡不着觉,好不容易找到人重新签名,好多用户已经不用了,那段时间真的太熬人了。后来找对了正规的平台,掉签了都是免费补,几个小时就能搞定,根本不用我催,现在用TF签名,大半年都没补过一次签,我都快忘了补签是什么感觉了。
说一下价格渠道对比吧,我踩了这么多坑,也摸清楚了大概的行情,共享企业签名一般几十到一百多一个月,看着便宜,但是真的不能碰,用不了几天就掉,全是坑;独立企业签名一般三百到八百一个月,适合短期内测,用户量变化大的项目,一定要找正规平台,别找个人贩子;超级签名一般一块到三块钱一个设备,按累计安装量收费,适合中小体量,用户增长不快的项目,别贪便宜找那种几毛钱一个的,基本都是黑号,用不了几天就全掉;TF签名一般几百到一千多一年,大部分应用这个价格就能搞定,是目前除了官方上架最稳定的,性价比也很高;H5封装一般几百到一千多,但是体验太差,不推荐需要功能的项目;官方上架自己弄就是六百八十八一年的开发者年费,找代办的话几千到几万不等,看应用类型,能过的话绝对最划算。
我现在的方案就是大部分用户放在TF签名,小部分不想走TF的新用户用超级签名,稳定得不行,每天不用盯着手机等用户说掉签,省下好多时间做工具更新,之前踩过的那些坑,什么P12证书损坏修复不了,商家跑路,天天补签,都已经成了过去式,其实找对签名方案真的太重要了,贪小便宜吃大亏,一开始找便宜的,折腾来折腾去花的钱比找正规的还多,还耽误事,我现在真心觉得,长期用的话,能上架就上架,上架不了就选TF,真的稳,用了一年多从来没出过问题,省心又省钱。