超级iOS签名免费测试:我的iOS分发踩坑实录
我做独立iOS开发快四年了,大部分时间都是接点小定制、做些自用小工具,很少有产品能顺顺利利上AppStore,所以这么多年,一半时间写代码,一半时间跟各种苹果签名较劲。
最早听说超级iOS签名免费测试,还是刚入行的时候,那时候接了个小微企业的内部考勤系统,客户要求不上AppStore,只给二三十个内部员工用,我那时候连P12证书是什么都搞不太清楚,慌得不行,到处找教程。
那时候第一次自己弄P12证书,踩了好大一个坑。从苹果开发者后台生成了开发证书,下载到本地,导出P12的时候,手贱选了不需要密码,结果导出的文件传到签名工具里,一直提示私钥无效,折腾了整整一下午,重装了两次Xcode,换了三个签名工具都不行。后来找圈里的前辈请教,才知道P12证书本身就是证书和私钥的打包文件,必须设置密码导出,不然私钥不会被打包进去,签名当然没法用。
从那之后我就记住了,所有P12文件我都存在加密云盘里备份,密码单独记在密码管理器里,之前有一次电脑硬盘坏了,没丢备份,不然之前绑定的几百台设备的签名,全要掉,那损失可就大了。
要说不同渠道的苹果签名价格,我这几年摸得门清,都是真金白银砸出来的经验。
如果自己有苹果99美元的个人开发者账号,一年下来也就六百多人民币,本身有100台设备的绑定名额,自己给自己签名的话,平均下来一台设备一年才不到七块钱,是最划算的。如果自己没有账号,找别人做个人UDID签名,一般一台设备一年是五到十块,差不多就是这个价,低于五块的基本都是用黑号,用不了几天。
超级签名现在都是按下载量收费,正常价格是一个下载八毛到三块钱,量越大单价越便宜,我拿过最低的是千次下载合八毛钱一个,是老客户给的优惠。那种号称一分钱一个下载,或者一百块一千次的,我亲身试过,不到三天账号就被苹果封了,所有签过的应用全掉,找谁都找不到,钱直接打水漂。
然后是企业签名,共享证书的一般一个月五十到一百五,独立证书的一个月三百到一千五,共享的就是很多人共用一个证书,只要有一个人签了违规应用被苹果查,整个证书所有人的应用全掉,我最早用二十九块一个月的共享签名,一天掉三次,补签补到我自己都嫌麻烦,后来再也不敢用了。
TF签名就是TestFlight签名,苹果官方的内测渠道,价格一般是一次三百到一千二,包审核通过,只要不违规被下架,一直能用,不用后续续费,这个价格我觉得挺合理,我现在找的稳定渠道是五百块包过,掉了补签免费,挺省心。
说了价格,再说说设备签名原理,其实我之前也搞不懂,为什么超级签名能直接安装,不用越狱。后来慢慢研究才明白,苹果本身允许个人开发者把应用安装到绑定了UDID的测试设备上,一个个人账号最多能绑100台,超级签名就是把这个拆开来用,攒一大堆个人账号,用户要安装的时候,先拿到用户设备的UDID,绑定到其中一个账号,再用对应的P12证书给IPA签名,这样苹果就承认这个设备有权限安装,本质就是钻了苹果开发者测试规则的空子,但本身不违规,只要不滥发违规应用,账号一般不会有事。
这里就不得不说UDID绑定,很多刚接触签名的开发者不知道,UDID就是苹果设备的唯一识别码,绑定之后只要你不把这个设备从账号里移除,只要账号不封,这个设备上的应用就能一直用,就算删掉重装也不会掉,也不会重复扣你的下载额度,换设备才会重新扣。我最早用免费测试的超级签名,那时候还不知道自动获取UDID是怎么实现的,以为是什么黑科技,后来才搞懂,就是做个H5封装的描述文件,用户点一下安装这个描述文件,就能把UDID传给签名服务器,整个过程不到十秒,不用用户自己去设置里翻UDID,对用户太友好了。
我自己还写过一个H5封装的获取UDID的页面,一开始用的免费的SSL证书,结果经常过期,过期之后用户就没法下载描述文件,获取不到UDID,折腾了好久,后来换了付费的信任证书就好了,这里也提醒大家,做H5封装的下载页,一定要用正规的HTTPS,苹果现在根本不允许HTTP下载描述文件,没有SSL证书根本用不了。
苹果的证书分发机制其实也不难理解,分几种情况。AppStore上架用的是生产证书,所有用户只要能下载就能安装,只要你不违规被下架,应用就一直能用,是最稳定的,所以只要能符合AppStore审核规则的应用,我肯定优先上架,毕竟不用操心掉签的问题,用户也信任,搜得到就能装。
但是很多应用真的上不了,比如企业内部定制应用,还没上线的内测应用,还有一些不符合审核规则的工具,审核卡几个月都过不了,只能走其他分发渠道。TF签名是苹果官方的,所以优先级第二,只要能上TF我绝对不上其他签名,毕竟苹果官方背书,基本不会掉签,只有你自己主动下架或者违规被封才会用不了,更新也方便,审核比AppStore松太多,一般几个小时就过了。
剩下实在上不了TF的,就用超级签名,超级签名只要用独立账号的证书,不共享,其实也挺稳定,比共享企业签名稳多了。最后才会考虑企业签名,企业签名现在价格贵,还容易掉,除非是需要不限制设备数量,不然真的不建议用。
说到IPA签名,其实不管什么类型的签名,本质都是对IPA安装包重新签名,替换掉原来的证书和描述文件,加上对应的权限,我之前自己用Xcode导出IPA,经常自己用命令行重新签名,后来嫌麻烦,就用第三方工具,方便是方便,就是有的小工具会偷偷加广告,所以还是找正规平台比较好。
我这些年踩过最多的坑就是掉签和补签。去年接了一个本地商家的会员系统,做出来要一百多台设备安装,那时候贪便宜,找了一个打着超级iOS签名免费测试旗号的平台,免费测试十个设备用了三天都没事,我就充了八百块买了两百个下载,结果不到一周,账号就被苹果封了,所有设备全掉了。找客服补签,客服说补签一次收五十,不然就只能自己重新买下载额度,那时候真的气的我想把电脑砸了,最后没办法,只能自己认栽,换了个稳定的平台重新签,客户那边也跟人道歉,折腾了快一周才搞定,好感度掉了一地。
还有一次,我把自己个人账号的P12证书借给一个刚入行的朋友用,结果他拿去给别人签违规应用,不到一周我的账号就被苹果封了,里面八十多个绑定的设备全掉了,我自己一年的账号费也打了水漂,从那之后我再也不敢把自己的P12随便借给别人,也奉劝大家,自己的证书私钥一定要保管好,不能随便给不熟悉的人。
现在我用的这个平台,一开始也是先做的超级iOS签名免费测试,给了我十个免费额度,我测了快半个月都没掉,才放心充钱,现在用了快一年了,只掉过一次,还是因为我自己不小心误删了证书,找客服补签,十来分钟就搞定了,也没额外收我钱,真的挺省心。
做独立开发本来就不容易,赚点钱大部分都交了各种服务费,踩坑踩多了才明白,找签名不能只看价格,稳定才是最重要的,掉一次签损失的不仅是钱,还有客户的信任,得不偿失。
我现在也习惯了,不管找什么签名平台,先拿免费测试额度测半个月,没问题再长期用,毕竟试过了才知道稳不稳定,那些连免费测试都不给的,或者测试的时候就天天掉的,直接pass就行,省得后续麻烦。
平时做开发累了,也会跟圈里的朋友聊起签名的坑,大家的经历都差不多,都是从贪便宜过来的,踩过几次坑就懂了,稳定好用比什么都强,能省心多花点时间写代码,比天天给用户解释掉签补签强多了。