我研究iOS签名机制快八年了,从最早企业开发者账号刚放开对内分发的时候就开始折腾,一开始帮创业朋友做内测应用签名,后来帮不少中小团队做H5封装应用的分发方案,这些年踩过的坑、见过的套路能整理出整整一个文档,今天就以我自己的实际经验,给大家做一份实实在在的避坑总结,帮大家少走弯路。
首先得把最基础的逻辑讲明白,很多刚接触iOS签名的朋友连什么是IPA签名都搞不清,更别说设备签名逻辑和证书分发原理了。简单来说,iOS系统是闭源的,所有能安装在苹果手机上的应用,都必须经过苹果认可的开发者证书签名,没有签名的IPA包,系统根本不会允许安装,这就是最基础的设备签名逻辑——苹果通过签名校验,确认应用的来源是被授权的开发者,保障手机系统安全。而我们常说的IPA签名,就是给那些没法上架AppStore的应用包,加上合法的签名,让用户能正常安装,最常见的就是各类H5封装应用,很多中小团队把移动端网页封装成IPA包,因为不符合AppStore的上架规则,比如很多本地生活工具、企业内部办公应用、行业定制化服务应用,根本过不了AppStore的审核,所以只能靠签名分发。
那证书分发原理又是什么?目前苹果的开发者账号主要分为个人、公司、企业三种,个人和公司账号开发的应用要想分发,必须上架AppStore经过苹果审核,而企业开发者账号天生的权限就是给企业内部员工做内部应用内测,不需要上架AppStore,也不需要绑定每台设备的UDID,只要用户信任企业证书,就能直接安装应用,这就是企业签名能脱离AppStore分发的核心原理。除了企业签名,现在大家常听到的还有TF签名,也就是基于苹果官方TestFlight内测平台的签名方式,本质是把应用作为内测应用放到TestFlight,用户通过邀请链接下载,也是苹果官方认可的方式,我们后面再具体说。
讲完基础逻辑,就得说所有签名玩家都绕不开的Apple ID风控了,这也是大部分人掉签翻车的核心原因。我刚入行那会,苹果的风控没这么严,一个企业证书能用一两年都不吊销,那时候坑还少,最近这五六年,苹果的风控机制升级了好多次,现在全是机器学习自动巡查,稍有不慎就会吊销证书,我最早踩的大坑就是栽在风控这里。大概五六年前,我接了一个客户的单,给他们做本地商家联盟的H5封装APP,那时候我贪便宜找了一个低价渠道的共享证书,才五十块钱一个月,我想着先凑合用,客户也压价压的厉害,结果签完上线才第三天,证书直接被苹果吊销了,两百多个已经安装的用户全部打不开应用,客户找上门来吵架,说他们刚推了开业活动,这下全砸了,最后我赔了一半的服务费才了事,后来我才搞明白,那个证书里塞了上百个应用,还有好几个擦边球的违规应用,苹果风控检测到违规,整个证书一锅端,我跟着无辜遭殃。
现在苹果的风控触发点其实很明确,我总结下来无非四个:第一,同一个证书下签名的应用数量过多,远超企业内测的合理范围;第二,证书下有违规应用被用户举报,触发风控;第三,单证书的安装设备量过大,动辄十万几十万的安装量,苹果系统肯定会判定违规;第四,证书本身是非正规申请的,比如是盗用企业信息注册的,或者被苹果查出违规倒卖,直接就会封号封证书。所以哪怕你自己的应用完全正规,跟违规应用共用一个证书,也会被苹果的风控牵连,这就是共享证书最大的坑。
说到这里就必须讲清楚独享证书和共享证书的区别,以及我做过的稳定性实测,给大家一个最直观的对比。共享证书说白了就是渠道商拿一个企业证书,卖给成百上千个客户一起用,不管什么类型的应用都往里塞,所以价格特别便宜,我见过最便宜的共享签名一个月才三十块钱,很多新手刚接触签名都会被低价吸引。而独享证书就是整个证书只给一个客户或者一个服务商自己用,不对外开放签名权限,所有应用都是自己的,不会有别人的违规应用牵连,价格自然要贵很多,一般单月独享都在三百到五百之间,年付也要几千块。
为了测清楚两者的稳定性差距,去年我专门做了三个月的稳定性实测,我同时找了三个不同档位的证书:第一个是三十块钱一个月的平台共享证书,第二个是一百五十块钱一个月的半独享证书,也就是一个证书卖给五个客户以内,第三个是三百五十块钱一个月的真独享证书。我每个证书下面都放了十个正规的H5封装或者定制应用,每个证书的总设备量都控制在五千台以内,排除设备量过大触发风控的影响,连续观测三个月。最后的结果让我更加坚信一分钱一分货:三十块的共享证书三个月掉了四次签名,最长的一次存活14天,最短一次3天就掉了,每次掉签所有用户都要重新删除下载,折腾到最后五个客户直接换了别家;一百五十块的半独享掉了一次,存活了52天,掉签原因还是同一个证书下另一个客户的应用违规,还是被牵连了;三百五十块的真独享整整三个月一次都没掉,直到现在我还在用那个证书,已经快一年半了,一次掉签都没有,这个实测结果真的比任何宣传都有说服力。
说完稳定性,再说说我接触这么多渠道的价格感受,现在签名市场价格乱的离谱,共享签名从三十到一百都有,TF签名按次收费,一般一百到三百一次用三个月,独享从一百五到六百都有,我换过不下十个渠道,最早在淘宝找低价,掉签之后商家直接跑路,找不到人;后来用第三方平台的自助签名,掉了可以免费补签,但是补签一次就要等大半天,而且补完没几天又掉,算下来一个月掉个三四次,用户体验差到极点,客户流失率特别高;再后来找一手渠道拿独享,虽然价格比共享贵了好几倍,但是真的省心得多,我现在二十多个稳定客户全用的独享,一年下来掉签次数不超过两次,而且靠谱渠道掉签还会免费给换证书重签,几乎不影响用户使用。很多客户一开始嫌独享贵,贪便宜用共享,掉个一两次就知道来找我换独享,毕竟对于做业务的来说,用户天天打不开应用,损失的根本不是那几百块的签名钱,是实实在在的客户和成交额,我之前有个做分销电商的客户,一开始用六十块的共享,掉签那天刚好是他们的大促活动,一千多用户全打不开,一天损失了快四万的成交额,后来换了独享,半年多没出问题,跟我说早知道一开始就用好的,亏大了。
这里也要提一下TF签名,很多人说TF签名比企业签名稳定,其实我用下来各有优劣,TF签名是苹果官方的内测渠道,确实本身很难掉签,只要应用过审就能一直用,但是TF也有很明显的限制:第一,一个应用最多只有一千个测试名额,用户量超过一千就得换账号重新上传,成本一下就上去了;第二,TF还是要过苹果的审核,违规应用、不符合规范的H5封装应用根本过不了审;第三,TF的测试有效期只有九十天,到期就得重新上传,对于长期运营的应用来说非常麻烦。所以如果你的应用是小范围内测,用户量不超过一千,内容能过审,那TF确实是很稳的选择,如果你的应用是长期运营,用户量比较大,或者没法过审,那独享企业IPA签名就是目前最优的选择,稳定性不比TF差,安装也更方便,不需要跳转TestFlight,用户点击链接就能安装。
最后给大家提几个避坑的关键点:第一,不要相信所谓“永不掉签”的宣传,只要是企业签名,都不可能百分百不掉签,但是真独享能把掉签概率降到非常低,一年掉一次都算多的;第二,不要贪便宜用共享证书,看起来省了几百块,实际上出事一次损失的钱远超过签名成本;第三,要区分真独享和假独享,很多不良商家说是给你独享,实际上偷偷塞别的应用进去,还是变相共享,一定要找能查证书下应用数量的渠道,确认只有你自己的应用才是真独享;第四,做H5封装的时候一定要做优化,不要纯套壳,纯套壳的应用很容易触发苹果风控,哪怕证书没问题也容易掉签,加几个基础的原生功能,能大幅提升稳定性。
这么多年玩签名下来,我最大的感受就是,iOS签名这个行业,稳定才是核心竞争力,所有的低价都是陷阱,只有证书稳定,用户能正常打开应用,你做的业务才能长期做下去,选对靠谱的证书和渠道,比什么都重要。