最开始帮朋友做内测APP测试的时候,我听都没听过苹果签名这种东西,朋友说要给我发超级签名的安装包,我第一反应就是超级签名需要越狱吗?那时候我刚换了新的iPhone,听说越狱会影响系统稳定性,还会失去保修,吓得我赶紧跟朋友说我不想越狱,能不能换别的方式测。结果朋友笑我老古董,说现在苹果签名根本不需要越狱,直接就能装,我才半信半疑开始接触各种签名,前前后后大半年时间,超级签名、企业签名、TF签名、H5封装都试过,也帮着整理过不少测试相关的东西,甚至帮朋友传过包到AppStore上架,大大小小的问题遇到过不少,今天就说说我作为普通测试用户实打实的使用感受。
最开始第一次安装超级签名,流程其实比我想象的简单太多,朋友给我发了一个网页链接,我用苹果自带的Safari打开,点了一下页面上的安装按钮,退回到桌面就能看到正在下载的图标,没半分钟就下载完了,点开来确实提示打不开,说我这是不受信任的开发者应用,要我去设置里信任证书。那时候我找不到入口,翻了半天设置才弄明白,其实流程也不复杂,就是打开设置,点通用,往下翻找到VPN与设备管理,进去之后就能看到对应开发者的描述文件,点进去之后点信任按钮,确认一次就能退出来打开APP了,全程不到五分钟,手机确实没越狱,还是原来的系统,连设置都没动别的,从那时候我就确定了,超级签名根本不需要越狱,那些说需要越狱的说法早就过时了。
后来接触的签名多了,才知道不同签名的流程和稳定性差这么多,也慢慢弄明白了P12证书到底是怎么回事。最开始我以为P12是什么复杂的技术东西,后来才知道,其实P12就是对应开发者账号的签名凭证,你用哪个账号给APP签名,就要用对应账号导出的P12证书,不管是什么类型的签名,都离不开P12。我第一次遇到和P12有关的问题,是刚测超级签名的时候,朋友让我提供UDID,我折腾半天获取到UDID,复制的时候少复制了一位,结果那边用P12绑定完设备,我这边怎么装都打不开,一直提示验证失败,来回折腾了一个多小时才发现是UDID错了,改完重新签名就好了。那时候我才知道,超级签名其实就是用个人开发者账号的P12,每个个人账号最多只能绑定一百台测试设备,所以要把每个测试用户的UDID加到账号里,用P12签名之后才能安装,只要哪一步错了,就用不了。
超级签名用了差不多一个月,那时候是二十多个人一起测,用了三个个人账号的超级签名,最开始半个月真的挺稳定,从来没掉过,打开也流畅,和从AppStore下的没什么区别,后来某天早上我打开APP,直接闪退,图标灰了,才知道是掉签了。这也是我第一次遇到掉签,当时慌得不行,赶紧找朋友问怎么办,后来才知道不同签名掉签的解决办法其实不一样,超级签名掉签,大部分是因为签名商把同一个个人账号分给好多人用,设备数超了,或者同一个账号签了太多不同的APP,被苹果查到封了账号,才会掉签。这种情况解决也简单,就是找签名商用新的账号重新签名,用户这边删掉旧的安装包,重新下载一遍,重新信任证书就能用了,唯一的麻烦就是本地存在APP里的测试数据会全部清空,我那时候攒了半个月的测试日志全存在本地,掉签重装之后全没了,心疼了好久。
后来我们测试人数变多了,超级签名要不停加账号成本太高,朋友就换成了企业签名给我们测。企业签名用的是企业开发者账号的P12,不需要绑定每个用户的UDID,也没有一百台设备的限制,不管多少人都能装,这点确实方便很多,谁要测直接发链接就行,不用一个个收集UDID。安装流程和超级签名其实差不多,也是点开链接下载,下载完去设置里信任证书,操作上没什么区别。那时候我才知道,企业签名分共享P12和独享P12,共享就是好多不同的APP共用同一个企业账号的P12,价格特别便宜,独享就是一个APP单独用一个账号的P12,价格要贵三倍多。我们最开始图便宜用了共享P12的企业签名,结果第五天就掉签了,后来一个星期掉了三次,每次都要重新下载,折腾得我们所有人都烦了,后来朋友咬咬牙换了独享P12的企业签名,果然稳定多了,一直用到我们内测结束,三个多月只掉过一次,还是因为签名商那边服务器出问题,很快就补好了,从那时候我就明白,想要稳定,不管是企业签名还是超级签名,能用独享P12就不要用共享的,贪便宜换来的就是天天掉签折腾,算下来浪费的时间都不止那点差价。企业签名掉签的解决办法其实和超级签名差不多,共享掉签一般签名商会免费补签,重新下载就行,独享掉签的话,签名商会负责快速重签,只要你的APP本身不违规,很少会频繁掉签。
用了企业签名之后,我们也试过TF签名,也就是苹果官方TestFlight的内测签名,那时候我们被掉签掉怕了,听说TF签名是官方的,基本不会掉,就想试试。TF签名的安装流程和别的都不一样,首先要你从AppStore下载官方的TestFlight应用,然后打开朋友给的邀请链接,跳转进TestFlight就能下载你要测的APP,最爽的是根本不需要自己去设置里信任证书,因为TestFlight本身就是苹果官方的平台,所有里面的APP都是经过苹果认证的,所以不会有不受信任的问题,打开就能用。我用TF签名测了两个多月,从来没掉过签,稳定性真的比超级签名和共享企业签名好太多。当然也有小问题,首先TF签名每个APP最多只能放一万个测试名额,我们小范围内测完全够,要是产品要做大范围测试就不够用了,还有就是有些年纪大的测试伙伴,不会找TestFlight下载,我前前后后教了好多次才教会,还有就是国内网络有时候下载TestFlight里的安装包速度特别慢,有时候要等十多分钟才能下完,这点确实挺闹心的。TF签名就算掉签,解决也很简单,一般要么是测试九十天有效期到了,要么是APP违规被苹果下架,重新打包上传审核一遍,就能重新用了,本身掉签的概率就特别低。
我们还做过一次临时活动的测试,用了H5封装,就是把做好的H5网页套一个原生APP的壳,做成IPA安装包,再签名安装。我用下来的感受就是,H5封装确实开发快,半天就能做好包,适合那种用几天就不用的临时活动,但是体验真的不如原生APP,翻页有时候会卡,调用手机的相机、定位这些功能,经常会出问题,我那次测的时候,点上传图片,半天弹不出相册,折腾了半天发现是封装的时候没给相册权限,改了重新签名才能用,而且H5封装本身只是做个壳,你做完还是要走上面说的各种签名才能安装,稳定性还是看你选的签名类型,封装本身不解决稳定的问题,长期用的话真的不推荐,体验太差了。
等到我们内测做完,要正式发布的时候,朋友就准备上架AppStore了。AppStore上架我算是全程跟着跑了一遍,感受就是正式上线之后真的太舒服了,用户直接打开AppStore搜索就能下载,不用折腾任何签名,不用信任证书,也根本不会掉签,只要APP不违规被下架,就能一直用,体验是所有方式里最好的。但是缺点也很明显,审核太严了,我们那个小工具,前前后后改了三次,审核了快一个月才通过,而且每年还要交六百多的开发者年费,要是只是做内测不上线,根本没必要花这个钱,所以只有正式对外发布的APP,才会走AppStore上架。
这么长时间用下来,我也摸出了不少让签名稳定流畅的小经验,首先如果只是几十人的小范围内测,选超级签名就可以,不用越狱,安装也方便,想要稳定就不要找那种特别便宜的,一定要找给你用独立账号独立P12的,不要和别人拼账号,虽然贵一点,但是不容易被封号掉签,用着省心。如果人数多一些,不超过一万的话,我最推荐TF签名,官方背书,稳定性比超级和企业都好,价格也比独享企业签名便宜,只要能接受装TestFlight,真的是最优选择。如果人数超过一万,那只能选企业签名,一定要选独享P12的,不要选共享的,共享的掉签频率真的能把人搞疯,多花点钱换几个月的稳定,真的很值。如果是临时用的小项目,才考虑H5封装,长期用一定要做原生,体验差太多。正式能上线的,尽量上AppStore,不管再麻烦,用户体验是最好的,也不用担心掉签的问题。
我这大半年遇到过好多大大小小的问题,除了之前说的UDID复制错、掉签丢数据,还有一次装企业签名,信任证书的时候一直提示无法验证,后来才知道是证书过期了,签名商没更新,重新签完就好了,还有一次超级签名,UDID加完了一直装不上,后来才知道是签名平台的同步延迟,等了两个小时就好了,这些小问题其实多弄几次就知道怎么解决了,只要选对了渠道和签名类型,大部分问题都能避免。