我去年从互联网公司离职创业,做的是给本地实体商家做私域预约工具,一开始靠小程序跑通了市场验证,后来不少付费客户提出要做带自有品牌的独立App,方便给老客户推送通知、做品牌展示。我手头预算有限,不可能花几十万做全原生开发,就选择了用H5封装出App,先做内测给客户试用,等功能打磨好再走AppStore上架。可真上手才知道,H5封装导出IPA包只是第一步,想要让用户能正常安装,绕不开IPA签名这一步,那时候我啥都不懂,搜教程的时候看到有ios企业签名免费测试,想着反正不花钱,就想着先试试水,这一试就是大半年的内测踩坑和经验总结。

先说说我现在跑顺的内测流程吧,其实逻辑很清晰,只是一开始没人带,踩了好多没必要的坑。每次我们改完H5的功能,封装工具导出未签名的IPA安装包之后,第一步就是收集所有参与内测用户的苹果设备UDID,以前我让用户手动输入UDID,经常输错一两个数字,最后导致安装失败,后来换了在线自动获取UDID的工具,用户点一下就能自动拿到设备信息,准确率百分之百,省了好多核对的时间。第二步就是用P12证书和描述文件给IPA做签名,第三步把签好的安装包传到专属下载页,配上安装教程发给用户,第四步就是跟进使用反馈,有问题随时调整更新。整个流程走顺之后,每次更新版本也就半个小时就能搞定,真的很省心。

最开始遇到的问题大多出在设备管理上。我第一次用免费企业签名,给第一个客户发完安装包,客户说下载完根本打不开,弹出来一个“未受信任的企业开发者”的提示,我那时候慌得要死,以为签名哪里出问题了,翻了两个小时教程才知道,企业签名的App,苹果默认是不允许直接打开的,需要用户自己去设备管理里面手动信任证书才行。不同版本的iOS系统,设备管理的入口还不一样,iOS13以前在通用的描述文件里,iOS14之后改到了VPN与设备管理分类下,很多普通用户根本找不到入口,那半个月我每天都要花两三个小时给用户发截图、打电话教怎么找入口,累得要死,本来就没几个人手,搞得我连改功能的时间都没有。后来我干脆做了三个对应不同系统的图文教程,放在安装包下载页最顶部,用户下载完就能看到,90%的问题用户自己就能解决,再也不用天天盯着手机回消息了。

这大半年我用过TF签名和超级签名,也说说我的真实使用感受吧。最开始我听圈里人说超级签名方便,就先凑钱试了超级签名。超级签名是用个人苹果开发者账号的测试名额来签名的,一个个人账号最多可以绑定100台设备,我那时候才三十多个内测用户,名额刚好够。超级签名最方便的就是不用用户去设备管理点信任,下载完直接就能打开,用户体验确实比企业签好很多。可没用半个月就出问题了,我那时候为了加设备方便,频繁登录账号导出设备信息,结果触发了苹果的风控,直接把我的个人苹果开发者账号给封了,所有已经安装好的App全部掉签,三十多个客户全用不了,那时候刚好赶一个连锁客户的店庆活动上线,我急得一宿没睡,到处找人补签,折腾了整整一天才恢复,那个客户差点就退款走了,给我留下了好大的阴影。

后来经同行朋友介绍,我转用了TF签名,也就是TestFlight签名,是苹果官方认可的内测渠道。TF签名用下来最大的感受就是真的稳,从我用到现在,大半年了从来没掉过签,毕竟是官方允许的内测方式,根本不存在第三方签名掉签的问题。可TF签名也有不方便的地方,就是每个新版本都要等苹果审核,我那时候改个小bug,更新个版本,审核就要等三四个小时,有时候赶上审核排队,要等整整一天,改功能的效率一下子就下来了,客户要个调整要等好久,体验也不好。而且TF审核比企业签严很多,有一次我们加了个客户自主发优惠券的功能,审核说内容不符合规范,打回了两次,折腾了好久才过。所以后来我摸出了规律,一般就是准备正式上架AppStore之前,才会用TF做最后的大范围测试,平时的功能迭代内测还是用企业签,兼顾了稳定性和效率。

说到签名,就绕不开P12证书管理,我在这上面踩的坑真的不少。最开始我不懂,找代签的时候,把自己苹果开发者账号生成的P12证书直接发给了对方,结果对方偷偷拿我的证书去签了好几个违规App,没过多久我的证书就被苹果封了,连带着我的开发者账号都受了影响,亏了小一千块的年费,心疼了好久。还有一次我把P12证书存在电脑桌面上,电脑硬盘坏了格式化,证书找不回来,害得我重新在开发者后台生成证书,所有之前签好的安装包全部失效,又一个个通知客户重新下载,折腾了整整一天,差点耽误了客户的活动。现在我摸出了管理P12证书的经验,我自己申请了公司苹果开发者账号,所有证书都是我自己生成自己管理,从来不随便发给外人,生成之后除了本地备份,还存在加密云盘和U盘里,做了三重备份,密码也设置得很复杂,从来没再出过错。要是找平台签名,我也只找那种不需要我提供证书,或者平台只帮我托管,不会拿去给别人用的,绝对不把自己的证书给别人乱造,毕竟账号被封的滋味太难受了。

做了这么久内测,我也总结了好几个证书防掉签的技巧,最核心的就是想要稳定省心,就一定不要贪便宜踩共享证书的坑。我最早用那个99块钱一年的企业签名,就是几百个人共用一个共享证书,哪天其中有人签了违规App,整个证书就被封,所有人都掉签,我最多的时候一个星期掉了三次签,每次都要重新通知客户下载,客户都烦了,我也差点崩了,好几个客户就是因为频繁掉签退款了,损失不小。后来我换成了独占证书,自己用自己的,不跟别人共享,一下子就稳定了,大半年也就掉过一次签,还是因为我忘了证书快过期了,没及时更新,属于自己的失误,不是证书本身的问题。

除了不用共享证书,还有几个小技巧也很有用,能很大程度提升稳定性。第一个是控制一个证书上的App数量,我现在一个企业证书最多只签20个内测App,都是我们自己客户的正规工具,绝对不签乱七八糟的内容,苹果根本不会找你麻烦。第二个是不要频繁添加删除设备,很多人喜欢今天加一个明天删一个,频繁操作很容易触发苹果的风控,我现在都是一周统一处理一次设备调整,很少操作,也就不会触发苹果的安全预警。第三个是定期更新描述文件,哪怕没掉签,我也半个月更新一次描述文件,提前规避风险,很多掉签都是因为描述文件过期,提前更新就没事了。第四个是收集UDID一定要准,很多人掉签其实就是UDID输错了,证书匹配不上,用自动获取工具就很少出这个问题。

现在我的整个内测流程真的很省心,每天花在签名和设备管理上的时间不到十分钟,大部分精力都能用来打磨产品和对接客户。我们现在还在准备AppStore上架,之前提交了两次,第一次因为说我们是H5封装纯套壳被打回,我们加了几个原生功能,优化了用户体验,现在正在等第三次审核结果,在正式上架之前,我们还是靠IPA签名给客户做内测,毕竟客户已经付了钱,要先用上才能等上架。回头看这大半年的经历,从一开始啥都不懂,到处踩坑,到现在流程跑顺,稳定不掉签,最开始那个ios企业签名免费测试确实帮了我大忙,让我不用一开始就花钱踩坑,先测试了稳定性再付费,对我们这种没多少启动资金的小创业者真的太友好了。其实做iOS内测没有什么玄学,找对方法,管好证书,不贪便宜,就能做到稳定省心,省下的时间精力,都能用来把产品做得更好,慢慢把生意做起来。