我自己是个业余做APP的普通人,平时喜欢捣鼓一些小工具,前阵子做了个记录手工创作进度的小应用,一开始满心欢喜想着直接上架AppStore,谁知道改了三次都因为功能规则不符合要求被打回,身边做开发的朋友说,没上架也能靠苹果签名装给身边同好用,先测着收集反馈改,那之后我就陆陆续续试了几乎所有常见的签名方式,踩了不少坑也攒了不少经验。
最开始我不懂行情,就想着找个便宜的,在二手交易平台找到了一个三十块钱包月的企业签名,卖家说掉签包补,我想着反正就是几个人用,试试也不吃亏。按照卖家说的流程,我需要打开Safari点开他发的链接,点一下安装按钮,没过几秒钟桌面就出现了APP图标,我那时候还以为成了,点进去直接弹出提示说未受信任的企业开发者,根本打不开。我赶紧去找卖家问怎么回事,卖家隔了好久才发过来一段文字教程,让我去设置里找通用,再找VPN与设备管理,找到对应的企业证书点信任就行。那时候我用的是新iOS系统,找这个入口找了快十分钟,一开始还以为在描述文件菜单里,翻来翻去都找不到,后来才发现在VPN那一栏的最下面,点进去找到证书,确认信任之后才终于打开APP。那时候我身边几个朋友要装,一半的人都卡在信任证书这一步,我要挨个给他们截图标位置,折腾了大半天,现在想想都觉得麻烦。
用了没三天,早上起来打开APP直接闪退,图标都变灰了,我就知道是掉签了。那时候我还不知道什么是掉签,赶紧找卖家,卖家过了三个小时才回,说共享证书就是容易掉,给我补签重新发链接就行。我那时候忘了APP里存了我好几个月的手工尺寸记录,也没导出来,直接删掉旧APP装新的,装完打开才发现数据全没了,当时气得我差点把手机扔了,那些数据都是我一个个量了记进去的,根本没有备份,找都找不回来。从那时候我才知道,掉签之后第一件事不是删APP,是先想办法把里面的数据导出来,要是能备份一定要先备份,不然真的欲哭无泪。后来我也摸清楚了不同签名掉签的解决办法,企业共享签名掉签就是找卖家补签,重新安装,只要提前备份好数据就没问题;超级签名掉签一般是UDID绑定出问题或者账号失效,重新绑定UDID换个证书签名就行;TF签名掉签基本都是三个月有效期到了,重新上传打包审核一遍就能接着用,都不是什么解决不了的大事,就是折腾人。
后来听朋友说超级签名更稳定,还给我推了一个有超级签名技术支持的服务商,我那时候完全不懂什么是P12证书,客服说如果自己是开发者,用自己的P12证书签名会更稳定,权限也在自己手里,不会受服务商牵连。技术支持一步步教我怎么从苹果开发者后台导出P12证书,我按照教程走,第一次导出的时候没勾选包含私钥的选项,导出的文件只有几k,上传到平台一直提示证书无效,我折腾了快一个小时都没弄好,最后找技术支持,人家远程帮我看了一眼就找出问题了,我跟着他说的步骤重新打开钥匙串,导出的时候勾选了包含私钥,设置了密码,导出的文件一下子变成了几m,再上传一下子就验证通过了,原来就差这么一个小步骤,之前绕了这么大的弯。现在我也算会用P12证书了,其实不难,就是新手容易漏步骤,有个人带一遍就全明白了,自己的P12自己存好,什么时候用都能拿出来,比用服务商的共享证书踏实多了。
弄好P12之后生成安装链接,还是Safari打开安装,奇怪的是装完之后直接就能打开,根本不用去设置里点信任证书,这点真的太省心了。我身边的朋友装的时候,再也没人问我为啥打不开了,装完直接用,体验比之前的企业签名好太多。我这个小应用也就五六十个人用,超级签名一个个人开发者账号最多能绑一百台设备,刚好够用,我用了快四个月,从来没掉过签,只有一次一个朋友换了新手机,把新手机的UDID加上去重新生成链接就能装,特别方便。当然我也踩过共享超级签名的坑,之前图便宜试过一次十块钱一个设备的共享超级签名,用了半个月就掉了,原来是那个共享的开发者账号被苹果封了,所有签名的APP都用不了,从那以后我就认准了用自己的P12做超级签名,再稳定不过。
后来用的人慢慢多了,超过一百个,超级签名一个账号不够用,我就试了TF签名,也就是TestFlight签名。其实TF签名就是苹果官方的测试渠道,把APP打包上传到App Store Connect,走一遍测试版审核,审核过了就能发邀请链接给用户下载,用户要先装一个TestFlight的官方APP,再通过邀请链接在里面装我的测试应用。我一开始上传打包也折腾了好久,要改版本号改适配,提交之后等了一天才过审,整体审核比App Store上架松很多,我那个之前被App Store打回的APP,一次就过了TF的审核。体验下来TF签名最大的好处就是稳定,毕竟是苹果官方的,根本不会掉签,我用了三个多月,从来没出过闪退灰屏的问题,缺点就是麻烦,用户要多装一个TestFlight,好多人觉得占内存不愿意装,而且邀请链接容易过期,三个月到期还要重新上传审核,每次更新版本也要等审核,有点耽误时间,胜在稳定,人多的时候用确实合适。
我还试过H5封装,当时有人说我这个APP就是记录加展示,直接套个壳做H5封装就行,成本低还快,我就找了个在线封装平台,花了几十块钱封装了一个,用的平台送的免费签名。装完打开我就后悔了,整个APP卡得不行,点一下保存要等好几秒,我要访问相册存手工创作的照片,开了权限也还是访问不了,折腾了半天发现是H5封装的权限适配没做好,新系统下很多原生权限都用不了,对于我这种需要本地存数据存照片的APP来说,根本没法用,只用了两天我就换掉了,H5封装也就适合那种纯展示的网页套壳,真的要做功能还是算了,体验太差。
折腾了大半年,我把APP的功能改得符合App Store的规则,重新提交上架,这次终于过了。上架之后的体验确实是所有方式里最好的,用户直接在App Store搜就能下载,自动更新,什么都不用管,也不会有掉签的问题,但是门槛真的太高了,对于我们这种业余开发者来说,刚做出来的测试版,根本不可能一开始就符合上架要求,所以测试阶段还是得靠各种签名。
踩了这么多坑,我也总结出了让签名稳定流畅的方法,其实核心就是别贪便宜,选适合自己人数的方式。如果就是几十个人小范围测试,一定要选超级签名,用自己的P12证书,找有靠谱超级签名技术支持的服务商,别买那种共享证书的,自己掌握证书和账号,根本不会随便掉签,我用了这么久都没出问题,就算出点小问题,技术支持也能很快帮你解决,不像那种小商家,收了钱就找不到人。如果人数超过一百,不想弄多个超级签名账号,那就选TF签名,官方背书稳定的很,只要能过审就基本没烦恼,就是多走一遍审核流程,也不麻烦。如果一定要用企业签名,那就多花点钱买独立证书的,共享企业签名真的碰都别碰,我之前用的三十块钱包月的,半个月掉了三次,每次都折腾半天,心态都能掉崩。掉签之后也别慌,先备份导出数据,再找对应的服务商重新签名就好,只要不是证书被苹果彻底封了,都能很快解决。
这段时间用下来,我最大的感受就是,苹果签名对于我们这种还在测试阶段的小开发者来说真的太重要了,不用一开始就硬磕上架,先做出来给用户用,收集反馈慢慢改,等成熟了再上架也不迟。只要选对了方式,找对了服务商,其实签名也没有那么多麻烦事,稳定用几个月根本不是问题,我之前就是贪便宜踩了坑,现在找对了方法,用着特别省心,也能安心改我的APP,最后顺利上架,真的离不开这些签名工具的帮忙。