超级签名与苹果审核:我的内测亲身经历

我去年从互联网公司离职创业,做社区邻里的闲置交易工具。一开始为了省成本,做的是H5封装,跑在微信生态里,用户用着总吐槽跳转麻烦,还容易被微信封域名,咬咬牙决定做独立APP,先做内测攒种子用户。

最开始我想的很简单,花六百多块买了一年的个人苹果开发者账号,打包好IPA就提交AppStore上架,结果三天就收到审核驳回通知,说我平台涉及个人交易保障,需要提供增值电信业务经营许可证,我这刚起步的小团队,哪拿得出来这么大的资质,只能先放下上架的念头,老老实实做内测,靠IPA签名先给种子用户安装测BUG。

说起来我最开始连内测流程都搞不清楚,还是找做开发的朋友问了半天才理清楚步骤。第一步是把开发好的项目导出未签名的IPA安装包,不管是原生开发还是我这种H5封装的,都要导出干净的未签名包才能后续操作;第二步是选合适的签名方式,统计好要参与内测的设备,把设备UDID加到对应描述文件里;第三步是签名完成后生成下载链接,发给用户安装,用户安装完要去设备的设置里信任企业证书才能打开。我第一次导出IPA的时候,导出了带Xcode测试签名的包,给服务商说不能用,我对着电脑折腾了一下午才弄对,现在想想真的是新手期必经的坑。

说完流程再说说设备管理,这也是我内测初期最头疼的事。我最开始用个人苹果开发者账号,官方规则里个人账号每年最多只能加100台测试设备,我拉的种子用户刚好有112个,超了12个名额,死活加不进去。后来我才知道,个人账号每年可以重置一次设备列表,我之前把测试用的旧手机都留在列表里占了名额,清完之后才腾出来位置,可就算这样,后来用户慢慢涨到一百五十多,还是不够用,只能转向第三方签名服务。

我最早用的是超级签名,说实话刚用的时候体验真的不错。超级签名按设备量收费,我买了200个设备量才花了不到三百,设备管理也简单,服务商后台能实时看到哪些设备装了APP,不想用了还能手动移除封掉,对小团队来说很灵活。唯一出过一次小岔子,是我不小心把后台管理链接发到了用户测试群,有个好奇的用户点进去瞎点,差点把我所有安装设备都删掉,还好我当时刚备份完设备列表,很快就恢复了,只是吓出我一身冷汗。

用了半个月超级签名我就遇到了掉签,那天早上刚起床就看到用户群炸了,十几个人说APP打不开,我赶紧登后台看,发现是服务商的证书被苹果吊销了,所有安装过的用户都用不了。我那时候刚拉起来的种子用户,本来信任就没建立起来,折腾了一整天才重新签好包发了新链接,最后还是有七八个用户嫌麻烦直接退了群,那时候我才真切感受到,稳定对于内测来说真的比什么都重要。

后来经朋友推荐我转用了TF签名,也就是TestFlight签名,这也是我目前用下来最省心的方式。TF签名本身就是苹果官方推出的内测渠道,所以根本不会轻易掉签,只要你的内容不违规,基本可以用到正式上架。当然TF也需要过苹果审核,这点刚好踩在超级签名与苹果审核的点上,我第一次提交TF的时候,因为H5封装的内容里有个邀请好友得优惠券的按钮,苹果说涉及诱导分享,直接打回来让我改,改了三次才过审。但过审之后是真的香,我这一百五十多个用户用了三个多月,只出过一次小问题,还是TestFlight测试期90天快到了,重新提交一下就好了,从来没出过集体掉签的情况。

对比下来我最大的感受就是,超级签名适合小范围短时间的内测,比如十来二十个人测BUG,安装方便不用用户额外下TestFlight,对小白用户友好;要是你要做几个月的长期内测,用户量也过百,能过审核一定要选TF签名,稳定省心能省你超多精力,不用天天盯着群里问为什么打不开。

说完签名方式再聊聊P12证书管理,这也是很多新手容易踩坑的地方。我最开始想省money,打算自己用苹果开发者账号生成P12证书签名,结果跟着教程瞎操作,一口气生成了三个分发证书,结果苹果的规则是一个开发者账号最多只能同时存在两个分发证书,我生成第三个的时候,苹果直接把我最早的那个证书给撤销了,那时候刚好我一百多用户用的就是那个证书签的,直接全部掉签,又给我搞了一次大危机。

后来踩过坑我才总结出P12证书管理的经验,第一,绝对不要乱生成证书,一个账号留一个在用的分发证书就够了,不用的旧证书一定要及时在苹果开发者后台撤销删除,不要占着名额;第二,P12文件和对应的密码一定要做好双备份,我之前就是把P12存在电脑桌面,电脑重装系统没备份,找了整整一天都没找到,最后只能重新生成证书,耽误了整整两天的测试进度;现在我都是存在云盘固定文件夹一份,本地U盘备份一份,密码存在加密备忘录里,从来没再出过问题。第三,绝对不要把同一个P12证书给多个平台共用,更不要随便把自己的P12借给别人用,苹果检测到大规模分发很容易直接吊销证书,我之前借过给朋友用一次,不到一周就触发风控,悔得我肠子都青了。

最后说说我总结出来的证书防掉签技巧,都是踩了无数坑换回来的,核心就是追求稳定省心,千万不要贪便宜。第一,绝对不要用共享证书,不要买那种九块钱一百设备的超级签名,都是一堆人共用一个证书,苹果一抓一个准,三天两头掉签,折腾来折腾去损失的是自己的用户,我现在用的都是独享证书,虽然贵了一倍,但用了快半年只掉过一次,还是因为我自己操作失误,值不值真的一目了然。第二,控制单个证书的设备量,不要为了省钱一个证书签几千个设备,苹果的风控机制对设备量异常的证书查的很严,我现在一个证书最多签三百个设备,分散开用,从来没触发过风控。第三,不要用开发证书做分发,很多新手图方便拿开发证书签名,苹果根本不允许,掉签都是分分钟的事,一定要用正规的分发证书。第四,长期能走TF就走TF,官方渠道比任何第三方签名都稳定,只要你内容不违规,根本不会掉签,能让你把精力放在改产品上,而不是天天给用户解释为什么打不开。

我现在内测已经快结束了,资质也凑的差不多,最近准备再提交一次AppStore上架,这段时间的内测经历给我最大的感受就是,小创业者做苹果内测,真的不需要搞太多花里胡哨的操作,选对签名方式,管好证书,稳就是最大的省钱省精力。之前我总想着怎么省个几十块钱,结果掉签一次损失的用户和精力,远远不止那点钱,现在摸透了规则,半个月都不用管签名的事,每天只需要改改产品回应用户反馈,真的省心太多。