作为做了快五年的独立iOS开发者,我一开始做梦都想把自己做的小工具上架AppStore,没想到连着三次审核都卡在隐私规则那栏,改了一个多月还是过不了,没办法只能转头研究签名分发,那时候满网搜苹果ios签名有哪几种,踩过的坑能绕我出租屋三圈,今天就把真实经验说给大家听。
我最早接触签名,是从自己弄个人开发者证书开始的。花了99美元买了一年的个人开发权限,那时候完全不懂P12证书怎么用,跟着网上教程生成证书之后,直接导出就给IPA签名了,结果签完的包用户怎么装都装不上,提示验证失败,我折腾了一整晚,差点把电脑砸了,后来才搞明白P12证书的门道。P12其实就是带私钥的证书导出文件,你在苹果开发者后台生成证书之后,导出的时候必须勾选包含私钥,还要设置密码,不然导出的P12是不完整的,根本没法给IPA签名。而且P12绝对不能随便借给别人,我身边一个开发者朋友,把自己的P12借给同行用,结果对方拿去签了违规应用,没多久整个账号都被苹果封了,之前所有绑定的设备全都掉签,损失了大几千,连哭都没地方说理。
讲完P12,就得说设备签名的原理,还有UDID绑定是怎么回事。其实所有的IPA签名,本质都是走苹果开放给开发者的测试通道,不是正式上架给所有人的公开发行通道。设备签名的核心就是UDID绑定,每台苹果设备都有一个唯一的识别码,就是UDID,苹果规则里允许开发者把测试设备的UDID加到自己开发者账号的列表里,只有在列表里的设备,才能运行你用这个证书签名的应用,这就是最基础的设备签名原理。我最早自己做的时候,每个新用户来,都得要对方的UDID,然后手动加到我后台的设备列表里,再重新用P12给IPA签名,发给用户安装,那时候一天十几个新用户,我就能忙到半夜,加错一个UDID就得全部重来,别提多折腾了。而且99美元的个人账号,一年最多只能绑定100个UDID,我那时候用户涨到101个的时候,死活加不进去,才发现还有这个限制,又多花了七百多买了第二个账号,心疼得我吃了一周泡面。
接下来给大家说不同渠道签名的真实价格,都是我这么多年实打实花过钱踩过点的,没有虚的。首先是超级签名,就是用个人证书做的按设备收费的签名,现在正规渠道的价格大概是10到15块钱一个设备,授权一年。那种报价几块钱一个设备的,基本都是引流或者用的共享证书、黑号,用不了半个月肯定掉,我最早就试过8块钱一个设备的超级签名,不到一个月全掉了,商家也找不到人,钱打了水漂。然后是企业签名,分共享和独立两种,共享企业签名就是很多个应用共用一个299美元的企业证书,价格大概是100到200块钱一个月,掉签了给补签,但是稳定度极差,我用了半个月共享签名,掉了四次,用户天天找我要新链接,我每天啥都不用干,就在那发链接,差点被逼疯。独立企业签名就是一个证书只给你一个应用用,现在价格大概是300到500块钱一个月,稳定度好很多,一般一个月最多掉个一两次,适合用户量比较大的应用。然后是TF签名,也就是TestFlight签名,是苹果官方的测试分发渠道,价格大概是200到500块钱一次,一次能用90天,这个价格差异主要看你的应用内容,敏感一点的价格会高一点。要是你自己签,成本就是每年99美元,折合人民币大概700块钱一年,适合用户量不到100的小开发者,算下来比找第三方划算多了。
说完价格,再说说不同的证书分发机制,现在市面上主流的就是三种。第一种就是个人开发证书分发,就是我刚才说的,用99美元个人账号做的,需要绑定UDID,最多100台设备,自己导出P12自己给IPA签名,稳定度最高,只要你自己账号不违规,基本不会掉签。第二种就是企业级证书分发,用的是299美元的企业开发者账号,苹果本来是给企业做内部应用分发用的,不需要绑定UDID,也不限制设备数量,任何用户都能安装,所以很多不上架的应用都用这个,但是苹果查得很严,要是证书下有违规应用,或者共享用的人多了,很容易被苹果吊销证书,也就是大家说的掉签。第三种就是TF分发,也就是TF签名,是苹果官方给开发者做预发布测试的通道,你把IPA上传到苹果的TestFlight平台,用户通过TestFlight下载安装,整个流程都是苹果官方认可的,所以稳定度非常高,很少掉签。
我去年接过一个本地商家的定制单,客户要求把他们的餐饮预定H5封装成IPA,不用上架AppStore,用户直接安装就能用,也就是大家说的H5封装套壳。封装完生成IPA之后,我本来想找企业签名,后来想想用户量大概有一两千,找TF签名更稳,就花了三百多做了TF签名,结果用了快一年,除了90天到期重新上传了一次,从来没掉过,客户非常满意。其实H5封装现在很常见,很多商家不需要上架,做个壳子签名之后就能给客户用,比做小程序还方便,成本也低。
说到掉签和补签,我真的有一肚子苦水。掉签说白了就是你的证书被苹果吊销了,不管是企业证书还是个人证书,只要被苹果查到违规,就会被吊销,所有用这个证书签的应用全都打不开,用户点进去要么提示未受信任,要么直接闪退。掉签之后就得补签,也就是用新的证书重新给IPA签名,然后再把新的安装链接发给所有用户,让用户重新下载安装。我之前用共享企业签名的时候,一次掉签三百多用户,我一个个发私信通知,发了一下午,手指都快磨出茧子了,好多用户嫌麻烦直接不用了,流失了快三分之一的用户,从那之后我再也不敢碰便宜的共享签名了。
我一直都想把自己那个隐私工具上架AppStore,前后改了五版,每次都因为权限问题被打回,苹果说我读取用户相册的权限没有必要,可我这个工具就是用来存隐私照片和备忘录的啊,解释了无数次都没用。找过代上架,报价最便宜的都要三千,保证过审,可我这个工具是免费的,就加了一点点banner广告,一年都赚不到三千,根本划不来,所以一直就用签名分发。其实很多独立开发者都有这个困扰,应用本身不违规,就是卡审核,或者是面向小圈子的应用,没必要上架,还要给苹果交30%的税,走签名分发反而更灵活。
这么多年踩坑下来,我也总结出来了,什么样的签名最稳定好用。如果你的用户不到100个,真的建议自己买个99美元的个人开发者账号,自己导出P12,自己绑定UDID签名,一年才七百多,成本很低,而且绝对稳定,只要你自己不拿去签违规应用,根本不会掉签,比找第三方靠谱一万倍。如果你的用户在100到10000之间,选TF签名最划算,价格不高,又是苹果官方的,掉签概率极低,用户安装也方便,扫个码就能在TestFlight下载,不用像企业签名那样还要手动信任描述文件,体验好很多。要是你的用户超过一万了,那就选独立企业签名,别找共享的,虽然贵点,但是稳定,掉签次数少,补签也方便,虽然偶尔还是会出问题,但是应付大用户量已经够了。
上个月我那个H5封装的餐饮应用,TF到期之后重新上架,结果被苹果卡了审核,说里面的外卖外链违反了规则,没办法只能换了独立企业签名,花了四百块一个月,现在用了一个多月,还没掉过签,只有两个用户更新系统之后提示打不开,重新信任一下描述文件就好了,不算大问题。之前我也担心独立企业会不会也经常掉,用下来觉得比预想的稳很多,一分钱一分货这句话,在签名这行真的是真理。
我也见过不少人卖那种号称永久不掉的签名,收几千块钱,说一辈子能用,其实都是骗人的,除了上架AppStore的正式应用,哪有什么永久不掉的签名,只要是侧载的测试包,都有掉签的可能,真碰到这种宣传,直接绕着走就行,我身边就有朋友交了两千多智商税,两个月之后签名掉了,商家早就跑了。
现在我平时自己做小工具,接点H5封装的定制单,大部分客户都要求不上架,我就根据客户的用户量推荐合适的签名,这么多年下来,也摸清楚了各种签名的脾气,虽然偶尔还是会遇到掉签补签的麻烦,但是比起卡在AppStore审核过不了,已经好太多了,慢慢来,日子也还过得下去。