苹果企业签名应用内更新 我的实测使用感受

我自己做了个给身边朋友用的习惯打卡小工具,最开始一门心思想上架AppStore,毕竟官方渠道是最稳定的,体验肯定最好。那时候折腾了快一个月,申请苹果开发者账号,打包应用,反复改提交资料,第一次审核就说我涉及未声明的本地数据存储,其实我根本没上传用户数据,所有记录都存在用户手机本地,改了说明重新提交,又说我界面过于简单,疑似套壳应用,再次被拒。来回改了四五次,最后因为我加了点自定义内容分享的功能,需要相关资质,我一个个人做的小工具哪来的资质,最后只能放弃上架,转头开始找各种苹果签名的路子,这一折腾就是两年多,大大小小的坑踩了无数,也算摸出了不少实用的经验。

最开始我试的是网上说的免费H5封装,说不用花一分钱就能弄好装到苹果手机上。我跟着教程把自己的网页打包,出来一个链接,用safari打开之后点安装,半天弹不出安装提示,折腾了快一个小时才知道,新系统直接屏蔽了这种未签名的封装安装包,后来又加了描述文件才装上。装完之后按照提示去信任证书,那时候我根本不知道信任证书是什么,打开设置找了半天,原来旧系统是在通用的描述文件与设备管理里,新iOS把入口改到了VPN与设备管理那栏,找到对应的开发者证书,点进去点信任按钮,确认之后才能打开应用。结果打开之后我就傻了,全屏弹广告,关都关不掉,好不容易进到主界面,卡的动不了,翻个打卡列表都要加载十几秒,毕竟H5封装本质就是套个壳开网页,网稍微差一点根本用不了,用了三天我就直接删了,后来证书还直接失效打不开,免费的果然没好货,这点我算是记牢了。

之后我听人说超级签名稳定,是用个人开发者账号签的,官方机制不会容易掉,我就找了个渠道试了试。超级签名的安装流程确实简单,给你个链接,safari打开点安装,直接就出现在桌面,不用手动去设置里信任证书,这点比H5和企业签名方便太多。说到P12证书,超级签名这边一般都是服务商自己准备证书,不用用户提供,后来我自己弄企业签名才知道P12到底是什么,P12就是开发者从钥匙串里导出的带私钥的证书文件,签名的时候必须用到,我第一次给服务商提供P12的时候还弄错了,导出的时候只选了证书没带私钥,对方说根本用不了,后来我重新打开钥匙串访问,找到证书右键选择导出,选P12格式,设置好密码才导出正确的文件。超级签名用起来确实比H5流畅多了,毕竟是原生安装包,打开速度快,数据存在本地也不卡,一开始我觉得找对路子了,结果用了一个多月,某天早上起来突然发现应用图标变灰,点不开了,就是掉签了。那时候我不懂掉签怎么办,到处查,一开始试着重启手机,没想到两次里面有一次重启之后就好了,应该是缓存导致的证书验证失败,那次重启不行,确定是真掉签了,原来服务商用的个人开发者账号被苹果封了,所有签过的应用都失效了。服务商给我重新签了一个,让大家都重新下载安装,结果有两个朋友没备份数据,存了大半年的打卡记录全没了,我那时候特别愧疚,而且超级签名按下载量收费,一百个下载额就花了我小几百,人多了真的用不起,后来朋友多了几个就不够用了。

接下来我就开始用苹果企业签名,也是我现在一直在用的,说到这个就不得不提苹果企业签名应用内更新,真的解决了我掉签的大麻烦。最开始我图便宜,买了个三十块一个月的共享企业签名,安装流程和H5差不多,也是给你链接,safari下载,装完要去设置里信任证书,流程我那时候已经熟了,装完很快就能用。共享签名真的掉签到我怀疑人生,最多的一周掉了三次,每次掉签我都要联系商家补签,补完还要一个个通知朋友重新下载,那段时间真的弄的我头大。后来我也总结出了掉签后的解决办法,首先掉签先别慌,先退出应用关掉后台重启手机,很多时候是临时的网络验证问题,重启就能恢复,要是重启不行就是真掉签了,这时候别着急删掉原来的应用,补签之后直接重新安装覆盖,数据一般都不会丢,只有删掉重下才会容易丢数据。后来我听开发朋友说,共享签名就是一个企业证书签几百个不同的应用,苹果检测到异常很容易封证书,想要稳定就得用独立签名,要么自己提供P12证书,用自己的企业开发者账号,一个证书只签自己的应用,这样很难被苹果检测到,掉签概率低很多。我咬咬牙弄了独立签名,自己折腾好久才弄对P12证书,中间还碰到过密码设置太复杂导致服务商导入失败,改成简单密码才解决,还有一次信任证书的时候连着代理,一直信任失败,关掉代理重启就好了,这些小坑都是我一步步踩出来的。用了独立签名之后,我还特意加上了苹果企业签名应用内更新,就是在应用里加了检查更新的逻辑,补完签之后用户打开应用就能收到更新提示,直接在应用内下载安装,不用我一个个通知,也不用到处找链接,真的太省心了。到现在快一年了,只掉过一次签,补完之后大家直接应用内更,几分钟就全部弄好了,没人再找我要链接,也没丢过数据。

中间我也试过TF签名,就是苹果官方的TestFlight测试渠道,都说TF是最稳定的,我就上传了一个试试。TF的安装流程是先装官方的TestFlight应用,然后打开邀请链接就能直接安装,不用信任证书,毕竟是苹果官方的,确实稳定,我用了大半年没掉过签,打开也流畅,但是缺点也很明显,每次更新版本都要重新等苹果审核,哪怕改个小小的bug也要等一天才能上线,而且最多只能有一万个测试用户,我后来朋友越来越多,快到限额了就不够用了,还有每次打开都要过一下TestFlight的启动页,稍微有点麻烦,所以最后还是转回了独立企业签名。

其实我后来又试过一次重新上架AppStore,改了所有不符合要求的内容,还是因为资质问题被拒了,对于我们这种个人开发的非盈利小工具来说,上架真的太难了。这么多签名方式用下来,我也摸出了让签名稳定流畅的方法,首先能上架AppStore肯定优先上架,毕竟官方渠道永远最稳,过不了审核再选签名,少量人用内测可以选超级签名,但是别找太便宜的,很多便宜的用的都是黑号,容易被封,找正规的用正规个人账号的,稳定很多。人多的话就选企业签名,千万别贪便宜用共享签名,一定要用独立证书,最好是自己提供P12证书,一个证书只签自己的应用,掉签概率低太多,最重要的是一定要加上苹果企业签名应用内更新,哪怕你现在用的很稳定,也要加上,万一掉签补完签,用户自己就能更,不用麻烦开发者,也不会丢数据,体验好太多。

这两年多踩了这么多坑,从什么都不懂的小白,到现在能自己弄好证书搞定签名,最大的感受就是不要贪图一时便宜,找对适合自己的方式,能省很多后续的麻烦,我现在用独立企业签名加上应用内更新,稳定流畅,身边很多做个人开发的朋友问我,我都会把这些经验告诉他们,让他们少走点我走过的弯路。