P12企业签名与超级签名对比:哪款更适合独立开发者
做独立iOS开发快五年,接了不下百个定制IPA的单子,踩过的签名坑能绕我的二手办公桌三圈。
最早帮客户做H5封装,弄完IPA不知道怎么签名,上网搜了一堆资料,半懂不懂就开始试水,那时候连P12证书是什么都搞不清楚。
后来才慢慢摸明白,P12其实就是把苹果开发者账号生成的证书和对应的私钥打包成的一个文件,不管是做IPA签名还是上架,都离不开P12证书。我最早自己导出P12的时候,踩过一个巨蠢的坑,在钥匙串导出的时候忘了选“包含私钥”,导出来的P12只有证书没有密钥,签名的时候一直报错,说证书无效,折腾了我整整两天,问了好几个圈里的朋友才搞明白问题出在哪。所以现在我每次用P12签名前,都会先检查一遍证书对不对,有没有带私钥,新手真的很容易在这栽跟头。
做了这么久签名,还是经常被问到,P12企业签名和超级签名到底选哪个,今天就说说我真实遇到的情况,还有价格、原理这些干货,都是踩坑踩出来的经验。
先说说设备签名的底层原理吧,不管是企业还是超级签名,本质都是让苹果系统认可你的IPA应用,允许用户安装到手机上。苹果对每个能安装的应用,都要求有合法的签名授权,UDID绑定就是这里面的核心环节。UDID就是你iOS设备的唯一识别码,苹果要验证你的设备有没有被授权安装这个应用,就靠这个码。
先说超级签名,超级签名的原理其实很好懂,就是用苹果个人或者公司开发者账号的真机调试权限,每个开发者账号最多可以绑定100台设备的UDID,你把用户设备的UDID加到开发者账号里,生成对应的描述文件,再用对应P12证书给IPA签名,用户安装的时候,苹果查到UDID在授权列表里,就放行。所以超级签名本质就是靠多账号堆设备量,一个账号最多100台,一千个用户就要用至少10个账号,这也是超级签名按设备收费的原因。
我最早做超级签名的时候,还要让用户自己去网页查UDID,复制了发给我,我手动加到账号里再签名,效率低到爆炸,一个十个人的测试版,我能弄一下午。现在好了,H5封装IPA的时候就能把自动获取UDID的逻辑嵌进去,用户点安装按钮就能自动获取,自动完成签名,全程不用用户动手,方便太多了。但UDID绑定也有坑,绑定之后你不手动移除,这个名额就一直占着,就算用户卸载了应用,名额也退不回来,所以超级签名真的不适合那种流量波动大的活动应用,比如做个线下活动,一下子来几千个用户,活动结束没人用了,钱也花了,名额也浪费了,很不划算。
再说说P12企业签名,企业签名用的是苹果企业开发者账号生成的P12证书,苹果给企业开发者的权限就是给内部员工分发应用,不需要上架AppStore,也不需要绑定每个设备的UDID,理论上可以无限安装,所以企业签名一般是按月收费,不限设备数量,这和超级签名按设备收费完全不一样。苹果的证书分发机制其实很明确,企业账号只能对内,对外分发属于违规,所以才会有掉签的问题。
我给大家报一下我这些年接触到的真实市场价格,没有任何虚的,不同渠道差很多,别被坑了。
共享P12证书的企业签名,就是很多个不同的IPA共用同一个P12证书,这种一般价格在80到150块一个月,很多商家宣传掉签免费补,听起来很划算,但是稳定性极差。我最早贪便宜找过一个20块一个月的,当天签完第二天就掉了,找商家已经被拉黑,一百块钱买三个月,用了三天就没了,血亏。后来又找过一个一百块一个月的,一个月掉了八次,每次补签要等四五个小时,那时候客户的应用是给门店员工用的,掉了所有人都打不开,客户天天找我吵架,差点把我项目款扣了,从那之后我再也不碰共享P12的低价企业签名了。
然后是独占P12证书的企业签名,就是整个证书只给你一个IPA用,这种现在市场价一般是300到600块一个月,大部分靠谱服务商都是承诺掉签免费补,二十四小时内补完,稳定性比共享签名高太多了。我现在给用户量几百上千的客户做,只要过不了TF和AppStore,都推荐这种,我上个月给一个医美机构做的H5封装应用,就是用的四百块一个月的独占P12签名,用了快两个月了,一次都没掉过,客户挺满意。
然后是超级签名的真实价格,现在市面上一般是1.5到3块钱一台设备,一百台起充,量越大越便宜,我合作的渠道,一千台以上就是一块五一台,一百台到一千台是两块钱一台,这个价格算是比较实在的,那种几毛钱一台的我不敢碰,大概率是用的黑号,封了就全掉。超级签名其实有个很多人不知道的优点,就是就算账号掉签了,已经安装好的应用一般还是能正常打开,只有新用户装不了,不像企业签名,掉了所有已安装的应用全部打不开,这个优势真的很大,关键时刻能少很多麻烦。
再说大家经常问的其他签名方式,既然说到这了,我也一起说,现在除了企业和超级,还有TF签名和AppStore上架,都是常用的。TF签名就是把应用放到苹果官方的TestFlight里让用户下载,本质是苹果官方的测试分发,所以基本不会掉签,价格现在一般是200到400块一次,有效期九十天,到期重新上架就行,只要你的应用能过审核,TF是现在最稳的方式了。AppStore上架就更不用说了,自己上架的话,只需要每年交688块的苹果年费,没有其他费用,找第三方代上架的话,一般小应用是一千到五千不等,过了才收钱,过不了大部分都会退款,但是AppStore审核太严了,很多小工具、定制应用根本过不了,所以才会有这么多人用第三方签名。
我前阵子刚遇到一个掉签补签的事,一个老客户,之前贪便宜找了外面的低价共享企业签名,一百块用三个月,上周突然掉了,找服务商,服务商说证书被苹果封了,要补签就得加钱涨到两百,不然不管,客户没办法找到我,我数了他的活跃设备,一共一百二十七台,做超级签名也就不到两百块,给他弄完到现在快三周了,一次问题都没有,客户说终于不用天天提心吊胆了。
掉签的原因其实也很简单,企业签名掉签大部分都是证书被苹果封了,共享证书为什么容易掉?就是因为几十上百个IPA共用一个P12,只要其中有一个IPA违规被举报,或者被苹果检测到对外分发,整个证书就完蛋,所有应用一起掉,你说坑不坑?独占证书只有你一个应用,只要你的应用不违规,不被大量举报,苹果很少会封,所以稳定性自然高很多。超级签名掉签一般都是账号被封,要么是频繁删加UDID被苹果检测到,要么就是用了共享的黑号,本来就不稳定,找靠谱的服务商,用稳定的私人账号,很少会掉。
我做这么久独立开发,最深的感受就是,签名这个东西,真的不能贪便宜,稳定才是硬道理。你给客户做项目,省了几百块签名钱,掉一次签,丢的是客户的信任,得不偿失。我现在接定制IPA的单子,都会先问清楚客户的需求:用户量有多少,应用是做什么用的,能不能接受审核,预算大概多少,然后再推荐合适的。能上架AppStore肯定优先劝客户上架,毕竟官方的最稳定,用户下载也方便;不能上架的,能过TF审核就做TF签名,稳得离谱;TF过不了的,用户量超过一百个,就做独占P12企业签名,按月付费,不限设备,算下来比超级签名便宜太多;要是只是内部几十个人测试用,那就做超级签名,按台收费,灵活又方便。
前几天刚给一个创业团队做了内部的项目管理工具,一共不到三十个设备,就是用的超级签名,不到一百块钱,用了大半个月,一点问题都没有,比企业签名划算多了。要是换做共享企业签名,虽然更便宜,但是哪天掉了,团队项目都没法推进,反而耽误事。
其实做独立开发这么久,大大小小的问题见多了,签名只是第一步,选对适合自己的,比什么都重要,毕竟我们要的不就是能稳定给用户用,少出问题多省心嘛。