我是做了五年的独立iOS开发者,平时接一些定制小项目,大部分是企业内部工具,或是一些不符合AppStore审核规则的小应用,这几年跟苹果签名打交道,踩过的坑能堆满一整个电脑文件夹。很多新手开发者一上来就问我,超级签名上架AppStore是不是真的能绕开审核,是不是花点钱就能直接上线,说实在的,我听完只能摇头,这里面的弯弯绕绕,没踩过坑根本搞不清楚。
我最早刚接触签名的时候,连P12证书是什么都搞不清,那时候找第三方签名,人家管我要P12文件,我还翻遍了项目文件夹找那个后缀是p12的配置,闹了好大的笑话。后来才搞懂,P12其实就是把我们的开发证书或者发布证书连同私钥一起导出的加密文件,不管你做哪种类型的签名,只要是自己出证书,都必须用到这个文件。我当初图省事,把自己个人开发账号的P12随便发给了陌生签名商,结果不到半个月那个账号就被苹果封了,我里面绑了大半年的测试设备全部清空,当时正赶项目上线,差点把我逼得连夜重新买账号绑设备,熬了两个通宵才救回来。从那之后我就定下规矩,P12绝对不随便外流,真要用到自己的证书签名,也是我自己本地签好IPA再出去,绝不会把证书私钥交给别人。
说到不同渠道的真实价格,我太有发言权了,现在市面上签名渠道鱼龙混杂,价格差大到能吓死人。我最早做IPA签名,找过一个个人接单的,超级签名给我报一块钱一个UDID,我当时以为捡了天大的便宜,一次性付了三百台设备的钱,结果三天掉了两次签,再找人人都已经把我拉黑了。后来摸爬滚打这么多年,也摸清楚了现在行业的真实价位:超级签名一般是一块五到三块钱一个UDID,一百台设备按年算大概就是两百到三百块钱,那种九十块钱包月不限制设备数量的超级签名,我劝所有人千万别碰,都是用的黑户共享账号,掉签掉的你怀疑人生,今天装上明天就打不开。然后是企业签名,共享企业证书的一般几十块钱一个月,几百块钱一年,独立独占证书的稳定款大概三百到五百一个月,真做一年稳定的企业签,成本大概三四千,这个价格是正常的,低于这个价的基本都是共享坑。TF签名价格就比较透明了,因为是苹果官方的测试渠道,一般按次收费,一个IPA签一次大概一百到三百块,能用九十天,最多可以绑定一万台设备,很少有乱报价的。真要走正规AppStore上架,成本浮动就大了,如果你自己能过审核,每年只需要交六十八块钱的开发者账号年费就行,如果找代上架,普通合规的APP大概几百到几千不等,那种本身不符合审核规则的特殊APP,代上架报价几万都很正常,水深得很。
很多新手搞不懂设备签名原理,也不明白UDID绑定到底是怎么回事,其实说穿了一点都不复杂,本质就是钻了苹果开发者规则的空子。苹果给每个类型的开发者账号都分配了绑定测试设备的额度,个人账号和公司账号都是最多绑一百台,本来这个功能是给开发者做测试用的,允许你把未上架的测试版APP装到测试员的手机上。超级签名说白了就是自动化了这个流程,用户点击安装的时候,自动获取用户手机的UDID,然后把这个UDID加到开发者账号的设备列表里,再生成对应的描述文件,给你的IPA重签名之后,用户下载下来就能通过苹果的验签,直接打开使用。UDID就是每台iOS设备唯一的识别码,苹果就是靠这个来绑定设备权限的,所以只要UDID绑对了,签名就能正常用。
那为什么会掉签呢?我去年就遇到过一次惊心动魄的大掉签,那时候给一个本地客户做社区类的APP,一共三百六十多个用户设备,找了一个报价两块钱一个UDID的新签名商,当时对方拍胸脯说一年内掉签免费补,我想着价格也还行,就付款了。结果用了五个月,对方用来签名的一批账号被苹果一锅端全封了,三百六十多台设备的APP全变成了灰色图标,点不开,客户的用户炸了锅,我一天接了四十多个投诉电话,吃饭的时候手机都没停过。找签名商维权,对方说账号被封他也没办法,要补签就得重新交钱,一块八一个UDID,等于我之前花的七百多块钱全打了水漂,还得跟客户低头道歉,打折减了大几千的项目款才把这事摆平,差点砸了自己做了好几年的口碑。从那之后我就只找做了三四年以上的老渠道,宁愿每台设备多花五毛钱,也绝不碰低价新号。补签这个事真的能看出签名商靠不靠谱,很多小商家说的包补,真掉签了要么拖你三五天,要么变相加钱,真正稳定靠谱的,掉签之后几个小时就能补完,大部分情况下用户只要重启一下APP就能恢复,少数需要重新下载,根本不会影响正常使用。
苹果的证书分发机制其实分的很清楚,很多新手刚入门的时候容易搞混。开发证书只能用来做本地测试,不能拿来做分发,很多新手用开发证书签名,装到手机上根本打不开,就是这个原因。正常做IPA签名分发,用的都是发布类证书,P12就是证书和私钥的载体,我自己做小版本测试的时候,都是用自己每年六十八块钱的个人账号,导出P12自己签名,然后把安装包放到我自己做的H5封装页面里,测试的时候扫码就能装,根本不用找别人,成本低还安全。现在很多客户找我做开发,都是把做好的H5网页封装成IPA,不想走AppStore审核,觉得审核周期长,还要改这改那符合规则,封装完直接做签名就能分发,方便又快,这种H5封装好的IPA,我一般都会推荐客户要么做超级签名,要么做TF签名,适配起来很方便,用户安装完体验和原生APP差不了多少,还能正常调用相机、定位这些手机权限,完全满足小商家的需求。
说到TF签名,这真的是我这两年用的最多的稳定签名方式了,除了用户安装的时候需要跳转到TestFlight稍微麻烦一点,其他几乎没有缺点。因为TF本身就是苹果官方承认的测试渠道,根本不会随便吊销你的签名,掉签率比超级签名低太多了。我去年给一个做企业考勤工具的客户签了TF,到现在快一年了,一次都没掉过,客户每天几百个员工用,从来没出问题,当时签一次才花了两百块钱,性价比真的很高。唯一的限制就是每个TF链接最多绑一万台设备,对于大部分小项目来说,一万台完全够用了,除非是几十万用户的大APP,不然根本不存在不够用的情况。
很多人会混淆超级签名和AppStore上架,觉得超级签名就能直接上架AppStore,其实这都是营销号的误导。超级签名本身只能做绕开AppStore的侧载分发,根本没法帮你上架正规的AppStore,真要想让用户从AppStore直接搜索下载,还是得走正规的审核流程,符合苹果的规则,提交审核过了才能上。我今年就帮一个做记账工具的客户上架过AppStore,之前他找了两个代上架都没通过,我给他改了UI,去掉了违规功能,补全了隐私政策和用户协议,十来天就过审了,现在用户直接从AppStore下载,根本不用操心签名掉签的问题,体验好太多,所以只要你的APP符合审核规则,我一定会劝你优先上架AppStore,一劳永逸,根本不用天天盯着签名有没有掉。
我之前还踩过一个坑,就是用了来路不明的P12证书签名,结果那个证书是盗来的,没半个月就被吊销,还连累我的IPA被苹果标记了,后来我想把这个APP上架AppStore的时候,审核直接被拒,说我的APP有违规分发的记录,折腾了半个多月才申诉成功,耽误了整整一个月的上线时间,损失不小。从那之后我就认准了,不管做什么签名,能用自己的证书就用自己的,不能用的就找正规渠道的证书,绝对不碰来路不明的文件。
其实掉签补签都是很正常的事,本来我们做侧载分发就是打擦边球,不可能有百分之百永不掉签的,靠谱的渠道只是把掉签的概率降到最低,真出问题能快速补上,不影响用户使用就够了。我现在接项目,都会提前跟客户把几种方案说清楚,百十台设备的小项目用超级签名,性价比最高;几千台用户的中等项目用TF签名,稳定省心;实在不能上TF和AppStore的,就用独立企业证书,虽然贵一点,但胜在稳定;能过审的,直接上架AppStore,永远不用操心签名的事。
前几天还有个刚入行的新手找我,说他做了个休闲小游戏,想绕开AppStore分发,问我有没有一块钱一个UDID的稳定超级签名,我劝他别碰低价,他不信,去找了那种99块钱包月的,结果不到一周全掉了,之前花了两千多块钱推的用户全没了,回来找我帮忙重新签,悔得不行。做这行这么久,我早就明白,签名这块真的是一分钱一分货,省那点签名钱,真掉一次签损失的用户和名声,比那点钱贵多了。现在我跟固定的老渠道合作,虽然价格不是最低的,但用着放心,掉签少补签快,我不用天天给用户擦屁股,客户也用的舒服,大家都省心。