我自己捣鼓了一个给本地探店博主用的小核销工具,一开始没想着做多大,就想先给圈内十几个朋友用着测测功能,谁知道第一次申请上架AppStore就碰了一鼻子灰。 审核前后折腾了一个月,一会说我整合的商家信息没有授权,一会说我核销关联的线下收费涉及违规虚拟支付,前前后后改了三版还是被打回,没办法才想着试试苹果签名,先凑合用着,这一用就是大半年,市面上能叫出名字的签名类型我几乎都试了一遍,踩了无数坑,也摸出了不少实实在在的经验。
最早接触的是企业签名,那是朋友介绍的一个个人签名商,说便宜好用,几百块包月。 当时我完全是个小白,对方给我发了一个网页链接,让我用自带的Safari打开,点页面上的安装按钮就能下载到桌面,我照着点完,下载是挺快,结果安装完点开直接弹了个“未受信任的企业级开发者”,根本进不去,我当时还以为我手机中毒了,赶紧给对方发消息问怎么回事,对方慢悠悠教我找信任证书的路径,我那时候用的是iOS16,找了半天才摸到,步骤说麻烦也不麻烦,就是打开设置,往下翻找到通用,进去之后找VPN与设备管理,然后在企业级应用分类里找到对应我APP的描述证书,点一下之后再点右上角的信任,弹出来确认框再点一次就能用了。 说起来简单,但是很多和我一起用的博主都是年纪大点的,根本找不到这个路径,我那时候还特意做了九步截图教程,还是每天都有人来找我问为什么打不开,折腾了快一个礼拜才让所有人都装好。
用了不到半个月,就出问题了,那天一大早几个博主同时找我,说APP点开直接灰屏,什么都点不了,我自己点开一看也懵了,后来才知道这就是掉签了。 掉签之后我赶紧找那个签名商,对方说共享签名掉签免费补,但是要排队,我那天刚好赶上本地做美食节活动,十几个博主都等着用工具核销福利,急得我满头大汗,等了四个小时才给我补完,补完之后还要所有用户重新下载重新走一遍信任流程,好多人都嫌麻烦抱怨,说早知道这么折腾就不用了。 后来我才慢慢搞懂,企业签名其实就是用苹果企业开发者账号的证书来签,市面上很多便宜的都是共享证书,几十上百个APP共用一个证书,只要其中一个APP违规被苹果查到,整个证书都会被封,所有签过的APP全都会掉签,说白了就是我被别人连累了。 这里就不得不说P12证书,之前我完全不懂什么是P12,后来那个签名商告诉我,如果我自己有P12证书,可以给我做独立签名,只有我自己一个APP用,不容易被牵连。 我那时候刚好买了一年的个人苹果开发者账号,就在苹果开发者后台按照教程生成了证书,然后用电脑钥匙串导出成P12文件,导出的时候设置了密码发给签名商,原来用共享证书的时候半个月掉一次,换了自己的P12做独立签名之后,两个多月都没掉过,确实稳了很多,后来我才知道,P12其实就是打包了证书和密钥的文件,自己持有的话完全掌控,不会被签名商拿去给别人用,也不会出现在你不知情的情况下被其他人牵连的问题,只要自己的APP本身没有违规内容,基本不会轻易掉签,就算掉签了,补签也不用重新做证书,直接就能签,省了很多麻烦。
企业签名稳了一点之后,我又听人说超级签名更稳定,不用手动信任证书,我就想着试试换一个。 超级签名是按下载量收费的,一个下载一块多,我当时才十几个用户,算下来也没多少钱。 安装的时候确实比企业签名方便,同样是打开链接点安装,装完之后直接就能点开用,不用跑去设置里面找证书信任,对用户来说体验好太多,不用我一个个教怎么找路径了。 那时候我觉得这个真不错,结果用了一个多月,还是出问题掉签了,原来我找的那个小平台,也是拼了很多个人开发者账号做签名,其中一个账号被苹果封了,我刚好分到那个账号,就全掉了,更倒霉的是没过半个月那个平台直接跑路了,钱也花了,找不到人补签,我急得出去跑了一天找朋友救急,才临时弄了个其他签名补上,从那之后我再也不敢找那种不知名的小平台做超级签名了。 超级签名说起来好,但是只要用户删了APP重新装,就算一次新下载,又要重新收钱,如果用户多一点,或者大家经常换手机,长期下来成本比企业签名高很多,稳定性也没有说的那么神,除非找那种大平台做优质号源的,不然还是容易出问题。
后来朋友给我推荐了TF签名,说这是目前最稳定的第三方签名了,是苹果官方TestFlight的测试渠道,不会掉签。 我抱着试试的心态去弄了,流程比其他的麻烦一点,要先把IPA包上传到TestFlight,然后等苹果审核,不过TF审核比AppStore松太多了,我头天下午提交,第二天一早就过了。 用户安装的话,就是点我发的邀请链接,会跳转到AppStore先下载TestFlight这个官方应用,然后再回到链接里跳转到TestFlight接受邀请,就能下载我的APP了。 确实和说的一样,不用手动信任证书,也不会掉签,我用了四个多月,从来没出过掉签的问题,真的稳定。 唯一的问题就是安装步骤多,用户要多装一个TestFlight,很多不熟悉的用户就会卡在这里,说为什么还要多装一个软件,嫌麻烦不愿意弄,而且TF一个应用最多只能有一万个下载名额,我现在用着够,以后要是用户多了就不够用了,而且测试版三个月就会过期,要重新上传一次,不过重新上传也不麻烦,就是花点时间,整体来说体验已经很好了。
再后来就是现在用的防封H5封装,因为我的这个工具本身就是基于网页做的,只是套了个原生壳,有人推荐我做防封H5封装,说比原生裸签稳定很多,不容易被苹果检测到。 我就找了专门的人做了防封处理,把整个网页重新封装成IPA,做了代码混淆和敏感信息处理,做好之后我同时签了TF和企业独签,用到现在两个多月,一点问题都没有。 之前我用原生裸签做共享企业签名,不到半个月就掉了,这次做了防封H5封装之后,确实稳定太多了,唯一的小问题就是封装之后打开加载速度比原生慢一点点,有时候推送会延迟,不过对于我们这种小范围用的工具来说,完全能接受,成本也低了不少。
其实我后来还是不死心,又改了三版,把虚拟支付功能全部去掉,只留核销信息展示,所有商家内容都补了授权,终于成功上架AppStore了。 上架之后体验确实是最好的,用户直接搜索就能下载,不用弄任何证书,也不会出问题,更不会掉签,但是门槛真的太高了,对于很多还在测试的APP,或者本身就是不符合上架规则的内测APP来说,根本上不了,所以还是得靠各种签名来用。
这大半年踩了这么多坑,我也摸出了不少让签名稳定流畅的方法,说出来都是实打实的经验,首先就是如果能上架AppStore肯定优先上架,毕竟官方的肯定最稳,要是没法上架,用户不多,一千个以内的,优先选TF签名,基本不会掉签,体验也差不了多少,就是多一步下载,耐心教教用户就好。 要是用户超过一万了,想长期用,选企业签名一定要选独立证书,最好自己提供P12,不要贪便宜选几十块的共享证书,看似省钱,掉签掉的你怀疑人生,折腾来折腾去反而花更多钱,自己弄个个人开发者账号也才几百块一年,生成自己的P12,只有自己用,根本不会被别人牵连,稳定性高很多。 如果是本身就是网页应用,一定要做防封H5封装,做好防封处理之后再签名,能大大降低苹果检测到的概率,掉签概率比裸签低太多了,我自己实测过,真的有用。 选签名渠道也不要贪便宜找个人小渠道,宁愿多花几十块一百块找大一点的正规渠道,掉签了能找到人补,几分钟就能弄好,不会像我之前那样掉签了找不到人,急得跳脚。
我之前还遇到过各种奇奇怪怪的小问题,比如导出P12的时候忘了设密码,签名商不收,折腾了半天才重新导出;比如用户装完企业签名之后找不到设备管理,后来才知道原来没装过签名的手机,设备管理默认不显示,装完弹过未信任之后才会出来,还要退出去重进设置才显示;还有一次我用的新beta版系统,装完签名信任了也打不开,换了正式版系统就好了;还有一次TF链接过期了我忘了更新,结果所有用户都用不了,我赶了一个多小时路回去重新上传,耽误了大家的活动,从那之后我都会设置提醒,快过期就提前更新。 现在我都是同时弄TF签名和防封H5封装的企业独签,TF给新用户用,稳定不出问题,企业独签做备用,万一那边出问题还有个退路,大半年用下来,很少再有用户来找我抱怨出问题,用着也踏实了很多,毕竟折腾过这么多次,终于找到适合自己的稳定方法了。