玩数字货币的同学在下载交易所APP(iOS端)的时候,应该会经常碰到下面这些选项。
这些不同的选项代表什么意思呢?从技术角度又是怎么实现的呢?
极速下载
这个其实不属于ipa包的一种方式。它是利用Safari提供的添加主屏幕的功能,相当于在桌面添加一个快捷方式。点击之后可以快速进入到相应的H5页面(自动用Safari打开)。
AppStore
这个就是常规的通过AppStore下载的方式了,只要你有AppId,就可以从AppStore下载。因为AppStore市场以及AppId账号都是分地区的,所以出现这种选项的大多是APP上架的国外市场,而用户又没有相应市场的APPId账号的情况。这个选项一般会提供一些账号用于下载。
TestFight
这个是appstoreconnect提供的公测功能,用户通过这种方式下载,需要先安装TestFight
APP。通过这种方式的安装上线是10000人,包必须经过审核才可以进行公测。有两种方式实现:
- 知道用户的邮箱,通过给用户发送一条安装测试的邀请链接,用户点击之后打开TestFight可以进行安装测试。这种情况主要是用于有目标测试人员,并且有他们的邮箱。
- 分享一条公开链接,用户如果安装了TestFight,点击这个链接,就会打开TestFight这个APP,并弹出一个安装测试包的安装页面。
很多数字货币交易所APP都是在国外市场上架,但是国内用户没有相应的AppId账号,这时候提供这种方式可以让国内用户下载。这种方式有个需要注意的就是一旦人数超出上限,或者停用该链接时,用户就没法继续通过这种方式来下载。
有些公司在正式发布一些尝试性的新版本时,也会通过这种方式来进行灰度。
本地下载
这种其实就是相当于从内测平台下载测试包,类似于蒲公英、fir.im这种第三方内容平发平台。用户下载的包需要信任证书,否则无法使用。如果要自建一个,核心原理也不复杂。具体可以参考浅谈iOS企业内部APP分发。
因为这种方式用的企业证书做的签名,在苹果审核机制和政策越来越严格的情况下,掉签也越来越常见。而一旦掉签,将极大的增加企业的获客难度和成本。而且据说因为企业账号的权限太大,苹果2019年已经逐步停止审核企业账号的申请。所以现在市场上出现了一些超级签名的服务。
所谓超级签名,就是用的开发者账号的ad-hoc分发通道。大概机制如下:
具体可参考超级签名-原理/机制/技术细节-完全解析。
其他
其他还有一些方式,如MDM、ABM系统,还没有仔细研究。感兴趣或者有需要的时候再研究一下。