我做独立iOS开发快六年,最早做一些不起眼的小工具,一开始一门心思想上AppStore上架,结果前前后后被打回四次,要么说我功能重复,要么说我不符合内容规范,卡了我三个多月,那时候才被迫开始接触IPA签名这行,踩过的坑能绕我出租屋三圈。
最开始连P12证书是什么都不知道,问了圈内一个做签名的朋友,才搞明白P12就是打包了开发者证书和私钥的文件,不管做哪种签名,都得靠这个给IPA做授权。我最早图便宜,在淘宝买一块钱一个的共享P12,结果导出的时候没注意,没把私钥包进去,发给打包的人说用不了,我来回倒腾三次才弄对,后来才知道,生成P12的时候一定要选生产分发证书,不能选开发证书,开发证书只能给绑定过的测试设备用,普通用户根本装不上,我那时候不懂,签出来十个包九个装不上,折腾我整整一周。
说点真话,不同渠道的真实价格我门儿清,这么多年被坑出来的经验,别被那些喊着低价的签名商骗了。现在市面上,共享个人P12一个月十来块,独享个人P12一个月也就二三十,一个个人开发者账号苹果官方年费才688,拆开来卖赚个辛苦钱,这个价格是正常的。共享企业P12做签名,一般一个月一百到三百,别看着便宜,这种就是一堆人共用一个证书,只要有一个人签了违规的包,苹果一吊销,所有人一起掉,我当年用一百五一个月的共享企业签,半个月掉三次,一点不夸张。独享企业P12的签名,现在一个月八百到一千五,因为现在苹果批企业开发者账号太难了,全新的企业账号本身就要两万多,分摊下来这个价格是正常的,稳很多,但也不是百分百不掉签,苹果查到你对外分发还是会吊销。超级签名按下载收费,一个下载3到6块,量大能讲到3块左右,但是个人账号最多绑100台设备,账号容易被封,封号就全掉。TF签名公开测试的话,正常价格一个打包好的版本150到300,90天有效期,到期续签也就几十块,按月算的话稳定的商家一个月300到500,我见过卖一千多一个月的,纯纯坑人,别信。代上架AppStore的话,普通无违规的包一千到三千,容易被卡的违规一点的包,五千到一万都有,这个看包的情况,没什么问题。
讲一讲设备签名原理,其实说穿了很简单,苹果的机制就是,只有被开发者账号授权的设备,才能安装用这个账号签名的包,所谓UDID绑定,就是把用户设备的唯一识别码UDID,加到开发者账号的设备列表里,这样证书打包的时候,才会把这个设备算进去,系统安装的时候才会信任这个包。个人开发者一个账号最多绑100台,所以超级签名就是搞一堆个人账号,自动获取用户UDID自动绑定,自动签名,所以才按下载收费。我最早自己给用户绑UDID,一百多个用户,手工一个个输,输到眼睛都花了,还输错了一个UDID,用户折腾一晚上装不上,我凌晨一点还在帮用户查问题,那滋味真的不想再来第二次。
苹果的证书分发机制其实分好几种,开发证书给内部测试用,生产证书给上架或者外部测试用,企业分发证书是给企业内部员工用的,苹果明文规定不能用来给外部用户分发应用,所以苹果一直会扫企业证书,但凡检测到对外分发,直接吊销,这就是企业签名掉签的根本原因。个人证书分发是允许做测试分发的,但是有100台设备的限制,做不了大用户量。而TF签名用的是苹果官方TestFlight的公开测试分发渠道,本身就是苹果给开发者做公开测试用的,属于合法合规的分发渠道,所以根本不会随便掉签,这是TF签名比所有其他签名都稳的核心原因。
说到掉签补签,我真的一肚子苦水,最早做共享企业签,掉签掉的我神经衰弱,手机开着免提睡觉,就怕用户群里喊掉签了。有一次凌晨两点,用户群炸锅,说所有用户都用不了了,我爬起来找签名商补签,结果签名商周末不值班,电话不接微信不回,我等到第二天中午才补上,整整十个小时用不了,一天掉了三十多个活跃用户,那时候我总共才两百多个用户,心疼的我一天没吃饭。还有一次给客户做一个内部用的工具,约定好一周交付,结果签完名第三天就掉了,补签等了三天,延期交付,被扣了两千块尾款,那时候我刚接外包,本来就没多少钱,扣完等于白做。掉签之后所有用户都要重新下载安装,很多用户嫌麻烦,直接就删了不用了,对我们小开发者来说,每一个用户都是攒出来的,掉一次签丢一波用户,真的扛不住。
我做过很多H5封装的项目,就是商家把H5的应用封装成IPA包,不需要上架,用户直接安装,这行都是H5封装完做IPA签名,原来用企业签名,掉签一次就要重新签名,还要改H5下载页的安装链接,要是域名没弄对,还要重新解析,折腾大半天。现在用TF签名,封装完一次上传,链接永远不变,就算90天测试到期,重新上传一遍就行,链接还是原来的,不用改H5,省太多事了。
其实我也上架成功过几个应用,上架之后确实方便,用户直接在AppStore搜就能下,也不会掉签,但是现在苹果审核越来越严,很多应用根本上不了,比如多开工具,比如行业内部的定制工具,比如一些小商家的本地应用,都不符合上架规则,就算侥幸上去了,哪天更新一下内容就被下架,申诉都没用,我之前有个记账小工具,上架了八个月,更新了一个自定义分类的功能,直接被说违反规则下架,说没了就没了,所以我现在做项目,都会留一手,能上架就上架,不能上架就走签名,优先选稳的。
现在很多人问我什么签名最稳定好用,我肯定推荐TF签名公开测试,我用了快两年,就没出过什么大问题,唯一一次就是测试满90天,重新上传一下,十分钟就弄好了,根本不用补签。而且TF公开测试不需要用户手动获取UDID,用户点一下链接,直接跳转到TestFlight下载,点几下就装好了,我之前用超级签名,天天教用户怎么查UDID,一半用户查不对,直接就走了,TF根本没这个问题,用户体验好太多,流失率降了不止一点。
我自己有两个个人开发者账号,自己生成P12证书,从来不会共享出去,所以也不会被别人牵连,现在找靠谱的签名商用自己的证书做TF,也就收几十块手续费,放心得很。之前我也自己折腾上传TF,一开始不会弄,弄了一整天,现在熟了也就十几分钟,但是还是找商家弄省事,省下来的时间改改bug加加功能,不比折腾签名强。
折腾这么多年,从一个连P12都不懂的新手,到被坑了无数次摸出门道,才明白对我们小开发者来说,稳定比什么都重要,与其天天盯着签名掉没掉,半夜起来补签,不如多花点钱找个稳定的方式,安安心心做产品。现在我做任何不能上架的项目,第一个想到的就是走TF签名公开测试,不用天天提心吊胆,能多睡几个安稳觉,比什么都强。