我自己做了个小工具,就是给身边同好的朋友用的,一开始没想那么多,只想着做出来之后大家能用上就行,等到开发完安卓版,弄苹果版的时候才发现,苹果这边想要让用户直接装上太麻烦了。最开始我想着直接上架到官方商店不就行了,哪知道折腾了好久,每次提交审核都被打回来,要么说我功能不符合规范,要么说我隐私说明写得不对,改来改去还是通不过,没办法才开始打听苹果内测签名的门路,这一踩坑就是好长一段时间,各种签名类型都试过了,攒了一堆真实的感受。
最开始我图省事,听人说H5封装简单,不用弄太复杂的流程,就找了个免费平台做了封装。生成安装包挺快的,弄完给了我一个网页链接,用手机打开点安装就能开始下载,下载完我兴冲冲点图标,结果弹出来一个提示说不受信任的开发者,根本打不开。我那时候完全不懂这些,搜了好半天教程才弄明白,原来除了安装包本身,还要手动去设置里面信任对应的证书。我按着教程找,一开始还找错了地方,在关于本机里面翻了好久都没看到描述文件,后来才反应过来,我手机系统更新之后,入口变了,要去设置的通用栏目里,找到VPN与设备管理那一项,进去之后就能看到对应开发者的描述文件,点进去之后选信任,还要输自己的手机密码确认,弄完之后才能正常打开APP。那第一次折腾,前前后后弄了好半天才搞定,真的挺闹心的。
H5封装用起来的感受也不太好,本质就是套了个壳的网页,切换个页面都要转半天,稍微网络不好一点直接白屏,我这个工具还要调用手机本地的相册,每次选照片都要卡好久,还动不动就闪退,用了没多长时间我就不想用了,而且那个免费的签名没多长时间就出问题,图标直接变灰,点也点不开,也就是大家说的掉签了,这才让我开始认真了解不同的签名类型。
后来最先接触的就是企业签名,也就是做内测分发最常用的方式。最开始找了一个便宜的共享企业签名,后来才知道共享签名就是好多APP共用一个企业开发者证书,价格便宜,但是稳定性特别差。后来也接触到了P12证书,一开始我还不知道P12是什么,以为是什么复杂的加密文件,弄了半天才搞明白,就是开发者证书导出之后带密钥的文件,有了P12就能自己给安装包签名,不用每次都把安装包传给服务商,等着服务商帮你签,自由度高很多。那个做共享签的服务商后来也给了我P12和描述文件,我自己找了个简单的签名工具,把安装包拖进去,选好对应的P12和描述文件,没一会儿就出了签好的安装包,用起来确实方便,想改个功能更新版本,自己随时就能签好发出去,不用等别人。
用共享企业签名那段时间真的是被掉签搞怕了,隔三差五就掉,有时候刚通知大家更新完没两天又掉了,每次掉签都要删掉原来的安装包重新装,我有一次没来得及备份数据,掉签重装之后里面存的配置全都没了,当时真的气到想放弃。掉签之后我也摸索出来不少解决办法,一般如果只是签名失效,证书本身没被封,只要重新签一遍就能用,要是你自己手里有P12,自己动手签几分钟就能弄好,不用等着服务商处理,如果是证书本身被苹果检测到封了,那就只能换个新的P12证书重新签,再发新的链接给所有用户重新安装,比较麻烦,但也没有别的办法。
后来听人劝,加钱换了独立企业签名,也就是一个证书只放我自己的几个APP,P12也我自己保管,这样就不容易被苹果检测到,稳定性真的提升了好多,用了很长时间都没掉过签。这里也提醒一句,P12一定要自己保管好,不能随便泄露给别人,我认识一个做签名的朋友,就是不小心把自己的独立证书P12流出去了,结果被别人拿去签了违规的应用,没两天证书就被苹果封了,所有用这个证书的APP全都掉签,赔了好多用户的钱,真的得不偿失,所以拿到P12之后一定要存在自己安全的云盘里,不要随便传给外人,也不要让别人拿去签别的APP,不然很容易牵连自己的应用。
用完企业签名之后,我又试了超级签名,超级签名是用个人开发者证书做的,安装的时候需要先获取手机的udid绑定,才能下载安装。我第一次装超级签名的时候,按照提示装了一个获取udid的描述文件,装完之后不知道要刷新页面,等了好久都没出下载链接,后来问了服务商才知道要刷新页面才能绑定,又折腾了好半天。超级签名装好之后,其实也要走信任证书的流程,和企业签名差不多,超级签名的好处就是掉签概率比共享企业签低一点,但是如果证书被封了还是会全掉,而且是按下载收费,用的人多了成本就很高,只适合小范围小人数的内测,人多了真的用不起。
再后来我又试了TF签名,也就是苹果官方的TestFlight内测,这个真的是我用过最省心的非上架方式,安装也简单,服务商给你一个邀请链接,用手机打开之后直接跳转到TestFlight应用,先装TestFlight,然后就能直接在里面下载你要用的APP,完全不需要手动去设置里面信任证书,因为是苹果官方认可的内测,所以装好就能直接打开,几步就弄完了,对不懂技术的用户太友好了。TF签名的稳定性真的没话说,只要你不违规,基本不会掉签,我那个应用放在TF里面用了好长时间都没出问题,唯一的小缺点就是也要过审核,虽然比AppStore松很多,但还是会卡一些不合规的功能,改一改一般就能过,而且打开的时候会有一个内测版的提示,不影响使用,就是看着有点别扭,另外下载也有一些限制,不过对于做内测来说完全够用了。
中间我也一直没有放弃上架AppStore,改了好多次功能,把不符合要求的地方全都调整了,隐私协议也按照要求补全了,最后终于审核通过成功上架了。上架之后的体验真的是最好的,用户直接从AppStore搜索就能下载,完全不需要搞任何签名信任的步骤,也根本不会有掉签的问题,更新也直接在AppStore更,省心到不行,而且用户看到是AppStore上架的应用,信任度也高很多,不会怕装到什么不安全的东西,真的是一劳永逸,就是门槛太高了,很多内测应用或者不符合要求的应用根本上不去,所以才需要各种签名的方式。
我用过这么多不同的渠道,也踩了好多坑,最大的感受就是想要稳定流畅,真的不能贪便宜,一开始我图便宜用免费签名,用那种低价的共享签名,隔三差五掉签,还要天天发安装链接,搞得用户烦我也烦,反而不如多花点钱选稳定的渠道。要是想要稳定,小范围内测的话,选靠谱服务商的超级签名就可以,只要不要找那种乱往证书塞应用的低价服务商,基本不会出大问题。如果是中等人数的长期内测,能选独立企业签名就选独立的,P12一定要自己拿在手里,不要给服务商放着,而且一个证书不要放太多应用,两三个最多了,放多了容易被苹果检测到封证书,只要控制好数量,真的能稳定很久。要是人数多一点,又没法上架AppStore,那直接选TF签名就对了,官方背书,基本不会掉签,比第三方签名稳定太多了,就是审核稍微麻烦一点,但是改改总能过。
那些免费的签名真的不要碰,我之前用过免费的,不仅天天掉签,还偷偷在安装包里面加广告,打开APP全是关不掉的横幅广告,还有的偷偷插代码,真的不安全,搞不好还会泄露用户的信息。找签名服务商也要找做了很久的老服务商,不要找那种新出来的低价跑量的,我之前就碰到过付了钱没多长时间服务商就联系不上了,群也散了,掉签都找不到人补,钱也打了水漂,老服务商虽然价格贵一点,但是有问题找得到人,也不会随便跑路,用着放心。H5封装我觉得只适合临时用的展示类应用,要是需要调用原生功能,长期用的话真的不推荐,体验太差了,用一段时间你就会想换掉。
我之前还碰到过不少用户说装完打不开,大部分都是没找到信任证书的入口,新系统和旧系统的入口位置不太一样,很多人按着旧教程找根本找不到,其实只要记住去通用里面找设备管理相关的入口就没错,找到描述文件点信任就可以,实在找不到搜一下自己对应系统版本的信任教程,很快就能弄好。掉签之后也不用慌,只要删掉旧包装新的签名包就可以,数据如果有备份的话恢复一下就行,要是证书没封,自己有P12的话几分钟就能搞定,很简单。
现在我那个小工具已经稳定上架AppStore了,不用再天天折腾签名掉签的事,回想之前踩过的那些坑,真的是涨了不少经验,原来苹果签名这里面的门道这么多,选对了渠道真的能省好多事,选不对就是天天折腾没完。如果是刚做苹果内测的新人,真的不要急着贪便宜选低价签名,多做做功课,根据自己的用户量选合适的方式,能自己掌握证书就自己掌握,不要把所有东西都放在服务商那里,不然出问题了哭都没地方哭。我之前还见过有人用共享签做对外发布,结果掉签把所有用户都丢了,前期的积累全都白费,真的太可惜了,其实多花一点成本选稳定的方式,后期能省好多精力,也能留住用户,这点投入真的很值。