我自己做了一款面向本地生活服务的小工具iOS应用,刚开始的时候因为功能还在迭代,加上一些便民的小众功能不符合官方上架的初始要求,没办法直接走App Store上架,只能选择找第三方签名解决分发问题,谁知道这一路踩了无数掉签的坑,前后折腾了快一年,才终于找到了适合自己的稳定方案,中间也自己研究过P12签名证书中级证书安装,踩了不少配置上的坑,今天把这些经历都分享出来,给同样需要分发iOS应用的朋友做个参考。
最开始接触苹果签名的时候,我什么都不懂,只听别人说企业签名最便宜,就随便在网上找了个个人商家做共享企业签名,一个月才六十块钱,比我预想的便宜太多,我当时还觉得捡了便宜,谁知道刚上线第三天就掉签了,用户打开应用直接提示无法验证应用,所有人都用不了,我赶紧找商家补签,商家半天不回消息,等到晚上才给我重新签好,那一天就走了快一百个用户,心疼坏了。后来才搞懂苹果签名的基本原理,所有的苹果iOS应用都需要经过苹果授权的证书签名才能被系统信任安装,不同的签名用的就是不同类型的苹果开发者证书,企业签名用的就是苹果发给企业的内部开发测试证书,本来是给企业做内部应用测试用的,现在被用来给第三方外部应用签名,共享企业签名就是几十上百个应用共用同一张企业证书,只要其中有一个应用违规被苹果举报,整个证书就会被苹果吊销,所有签过这个证书的应用都会掉签,这就是为什么掉签这么频繁。那段时间我平均一周掉两三次签,天天盯着用户群看反馈,一掉签就找商家补签,补签完还要重新发安装链接,通知所有用户重新下载,折腾得我根本没时间更新应用功能,后来我才知道,自己配置签名的时候,P12就是导出后的证书私钥打包文件,而中级证书安装是必不可少的一步,很多小商家图省事,中级证书安装配置不对,签出来的包本身稳定性就差,更容易掉签,我那时候自己研究P12签名证书中级证书安装,搞了整整一下午才弄明白,原来中级证书需要安装到系统钥匙串的受信任根证书列表里,导出P12的时候必须勾选包含私钥,不然签出来的包就算能装上,也很容易被苹果验证出问题,用不了几天就会掉。
受不了共享企业签名的频繁掉签,我咬咬牙加钱换了独享企业签名,一个月四百块,说是整个证书只给我一个人用,不会有其他应用影响,换完之后确实稳了小半个月,我当时还觉得终于没问题了,结果半个月后还是掉了,商家说是苹果近期抽查企业证书,就算没有违规应用也可能被封,给我免费换了一张证书补签,哪知道又过了不到一个月,又掉了,而且那个商家之前收了我季度的费用,之后直接联系不上了,我才知道很多个人小商家就是赚一笔就跑,根本没有售后保障。后来我换了正规平台的独享企业签名,一个月八百块,稳定性确实好了不少,掉签频率降到了一两个月一次,平台也有24小时补签服务,掉签之后十几分钟就能补上,但是就算这样,掉签还是会影响用户体验,总有用户嫌重新下载麻烦,直接就不用了。这时候我也开始对比不同的签名方式,尝试过当时宣传得很火的超级签名,超级签名用的是个人开发者证书,原理是把应用安装的设备添加到个人开发者的测试设备列表里,每个证书最多绑定一百台设备,按下载量收费,当时我问的价格是两块钱一个下载,我的应用当时有不到五百个活跃用户,算下来一个月也要一千块左右,比独享企业签名还贵,我想着只要稳定贵点也接受,就签了超级签名,刚开始一个月确实没掉过签,我还觉得超级签名真的不错,结果第二个月不知道哪里来的刷量,一天就给我刷了三百多个下载,直接扣了我六百多块,找服务商服务商说超级签名就是按实际下载量收费,他们也没办法控制刷量,而且没过多久,苹果开始严查超级签名,很多个人开发者证书被批量吊销,我的超级签名也没能幸免,整个证书掉了,所有用户都用不了,服务商说现在超级签名大环境不好,很难稳定,想要稳定只能加钱换更高价的,我那时候已经对这种容易掉的签名失去信心了,就没再续。
之后我听朋友说TF签名稳定,就去了解了TF签名,TF签名其实就是利用苹果官方的TestFlight测试平台分发,原理是开发者把应用上传到TestFlight,用户通过TestFlight下载安装,本质上是官方认可的测试分发,所以根本不会掉签,因为证书都是苹果官方管的,只要应用不违规,就不会被封,我当时找的正规服务商做TF签名,五百块包三个月,包过审核,第一次提交因为我应用里有个第三方跳转的功能没写清楚,审核没通过,服务商帮我调整了描述,第二天重新提交就过了,上线之后我用了快三个月,真的一次都没掉过,用户安装也很方便,只要打开链接跳转到TestFlight就能下载,比企业签名和超级签名稳定太多了。唯一的缺点就是TF最多只能有一万个测试名额,而且测试有效期是九十天,九十天之后需要重新提交更新,不过我当时的用户才几千,名额完全够,九十天到期之前服务商会提前提醒我,帮我重新提交审核,一天就能过,用户只要在TestFlight里点一下更新就能继续用,根本不影响使用,比之前掉签了重新下载方便太多,我用TF签名用了快半年,只在九十天到期的时候重签更新过一次,从来没出现过用户无法使用的情况,这是我用所有签名方式里最稳定的一种。
中间我也试过H5封装,就是把我的移动端网页套个iOS壳打包,说是不用签名也能用,其实不对,还是需要签名才能安装,H5封装本身价格很便宜,一百五十块就能打包好,每月只要三十块维护费,我当时想着试试,结果用了之后发现体验太差了,打开速度慢,很多原生功能比如推送、本地缓存都调用不了,用户反映经常卡顿,而且H5封装也需要签名,还是逃不过掉签的问题,所以用了不到半个月我就换掉了,只适合那种临时用的推广页面,不适合长期给用户用的应用。
后来我攒了点钱,也把应用里不符合要求的功能调整了,就尝试做官方上架,官方上架就是直接把应用上传到App Store,经过苹果审核之后就能让用户直接从App Store搜索下载,年费只需要交六百八十八块的苹果开发者年费,我找了服务商帮我做审核优化,花了八百块,前两次审核都被拒了,第三次修改之后终于过了,上架之后确实是最稳定的,只要不违规被下架,一直都能用,用户下载也最方便,信任度也高,唯一的问题就是苹果审核太严,我不得不砍掉了几个用户很喜欢的小众功能,而且每年都要续费,只要应用符合要求就没问题,现在我是把正式版放到App Store上架,测试版放到TF签名做内测,新功能先在TF给活跃用户测试,没问题再上架官方,这个组合用了快一年,从来没出过大问题,稳定性比我之前用的所有签名都好太多了。
说到价格和渠道,我也踩过这么多坑,总结下来,共享企业签名一般就是三十到一百块一个月,大多是个人商家和小工作室在做,价格便宜但是真的不推荐,掉签太频繁,售后也没保障;独享企业签名大概三百到一千五一个月,正规大平台的售后好一点,掉签补签也快,但是还是有掉签风险,适合短期临时用;超级签名现在基本都是一块到三块钱一个下载,容易被刷量,现在苹果查得严,稳定性也大不如前,不推荐长期用;TF签名一般两百到八百块一季度,或者一块到两块钱一个安装,正规服务商做的基本不会掉签,稳定性很高,适合没上架或者不能上架的应用长期用;H5封装就是几十到两百块打包费,每月几十块维护,只适合临时推广,不适合长期用;官方上架就是每年六百八十八块年费,加上几百到一千的审核服务费,只要能过审就是最稳定的,适合正式应用长期运营。
我印象最深的一次补签经历,还是之前用共享企业签名的时候,刚好赶上平台做线下活动,很多新用户扫码下载,结果刚好赶上证书掉签,那天是周末,商家休息,整整一天都联系不上,新用户装不上,老用户用不了,那次活动本来能涨几百个用户,结果最后只留下了几十个,损失真的很大,从那之后我就明白,对于做应用分发来说,稳定真的比便宜重要太多,贵一点只要能一直用,其实比天天掉签损失用户划算得多。后来我也自己折腾过自签名,研究P12签名证书中级证书安装,一开始总是装错,要么就是证书不受信任,签出来的包用户装不上,后来找靠谱的服务商请教才弄清楚步骤,安装中级证书的时候一定要导入到受信任的根证书位置,导出P12的时候必须保留私钥,配置不对的话,哪怕你证书是对的,签出来的包也不稳定,很容易掉签。
现在我用官方上架加TF签名的组合已经快一年了,除了九十天到期的时候正常更新一下,从来没出过大问题,用户的投诉几乎没有,我也能把更多精力放在更新功能和运营上,不用天天盯着掉签补签,这种稳定的感觉真的太好了,对于很多没办法直接上架的iOS应用来说,选对签名方式真的太重要了,与其贪便宜选容易掉的签名,不如多花一点钱选稳定的方案,才能长久运营下去。很多人一开始和我一样,只想着找最便宜的签名,结果折腾来折腾去,损失了用户还浪费了时间,不如多花点时间试错,找到适合自己的稳定方案,剩下的只要专心做产品和运营就好,不用再为签名的问题烦心。