译者:boxi
苹果的体验确实不错。但是苹果生态体系的不够开放也是恶名远扬。所有app都必须通过它的应用商店才能安装使用,任何不符合苹果规则的app都不能上架。这把很多创新古怪的app拒绝在门外,也让一些人开始想办法突破这种限制。AltStore就是其中之一,随着下载量超过了150万,以及要求苹果开放iOS的压力越来越大,RileyTestut的替代版应用商店前面的路还长着呢。
划重点:
侧载为AltStore提供了规避苹果限制的可能
AltStore为更多小巧、古怪、有趣的iPhoneapp提供了容身之地
苹果正面临要让用户可以从应用商店以外的地方安装app的更大压力
从苹果应用商店以外的地方安装app的最好方式之所以成为可能,是因为RileyTestut想在自己的iPhone上玩精灵宝可梦。
开始在iPhone上开发用于玩经典GameBoy游戏的模拟器时,Testut还在上大学。但后来苹果不再允许这款app进入苹果的应用商店,他开始寻找解决方法。其结果就是AltStore,它可以让iPhone和iPad用户安装Testut自己为旧的任天堂游戏准备的Delta模拟器,以及任何苹果认为超出限制的其他app——这个过程叫做侧载(sideloading)。
AltStore的下载量现在已超过150万次,这项服务的月活用户数超过了30万。这些用户当中有将近6000名用户为AltStore的Patreon(在线捐助平台)账户捐献,每月可为他带来超过14500美元的收入,而支持者也能尽早获得新功能。
苹果正面临更大的政治压力,即要让用户可以从应用商店以外的地方安装app,而AltStore正在为迄今为止最大的更新做着准备。用户很快就可以通过AltStore发现新的app,直接侧载安装,而不必费力去浏览有问题的下载站点。iPad的优化也在进行中,Testut最近聘请了自己的老朋友ShaneGill,请他帮改进AltStore的文档,并致力于开发者的外展工作,从而让Testut能够抽出更多的时间去编程。
Testut说,他的目标是将AltStore变成避风港,作为与苹果应用商店政策发生冲突的那些独立app的避风港。
他说:“现有的app们很无聊。没有酷炫有趣的app出现。我们希望在AltStore里面能看到更多小巧、古怪、有趣的app。”
AltStore的工作机制
AltStore模仿了苹果的Xcode编程软件的一项功能,这项功能可让开发者在实际的iPhone和iPad上测试他们自己的app。那项功能是在2015年推出的,表面上是针对想要涉足app开发的学生,但实际上它允许任何人在没有每年需缴99美元的开发者帐户的情况下侧载app。
Testut说:“当苹果宣布这一消息时,我想,‘喔,所以还是有某种办法只用一个AppleID就可以将app安装到iOS上的’。我就是从这一点出发,然后扩展成一个完整解决方案的。”
RileyTestut(左)与ShaneGil(右)[照片:由AltStore提供]
要想启用侧载,用户必须在Mac或WindowsPC上安装一个叫做AltServer的配套app。然后,这个程序会使用他们的AppleID帮助用户登录进去,并设置好他们的帐户好支持开发,同时对AltStore的app进行签名,使它看起来好像是用户自己创建的。之后,AltServer再使用iTunes同步协议将AltStore发送到用户的iPhone或iPad上面。
安装了AltStore之后,用户只需点几下即可添加Testut的Delta模拟器或Clip剪贴板管理器,而且还可以使用.ipa文件格式安装应用商店以外的其他app。(主要社交媒体app的无广告版似乎特别受欢迎,其他经典的游戏模拟器也很火。)
由于app签名过程以及要通过Xcode实施侧载的限制,AltStore确实存在一些局限性:唯有与运行AltServer的Mac或PC处在同一个Wi-Fi网络的情况下,用户才可以安装新的app,而且除了AltStore以外他们最多只能再安装两个app。虽然用户可以随时更换这两个app,但AltStore每周最多也只能侧载10个app,而且每个app每周都必须通过与AltServer的连接“刷新”一次。
由此带来的体验也许感觉有些不牢靠,app偶尔也会出现没法刷新,或者在安装过程中安装不下去的情况,但它所带来的回报也非常巨大。我在旅途的过程中会用AltStore玩经典的任天堂游戏(用RazerKishi控制器),这也让我的PebbleWatch变得再次可用(去年秋天它的app已经从苹果应用商店消失了),甚至还能享受没有广告的Twitter。
在阻止这种行为方面,Testut不相信苹果有多少事情可以做。虽然他偶尔要被迫处理一些小障碍——比如Apple禁用了他一直依赖的一种简单的帐户身份验证方法——但AltStore最终利用苹果本身为开发者提供的侧载方法绕开了限制。
要想彻底阻止AltStore,苹果需要对自己的工具进行完全的重新设计,要不就得修改针对开发者的政策,而在要求苹果放松应用商店对app下载垄断的监管压力下,苹果也许觉得不值得费这些力气。(Testut说他从未就AltStore与苹果直接接触过;苹果则没有回应置评的请求。)
Testut说:“把能做的都做了是很容易,但他们不会破坏自己的开发流程。此外,现在就盯上一款替代应用商店从公关角度来说很糟糕。”
建立一个真正的商店
自2019年以来AltStore就一直是Testut的全职工作。那一年,他在Patreon上发起了一项赞助活动,让支持者可以访问AltStore的测试功能。慢慢地,他把AltStore做得更加可靠,并且推出了AltServer的Windows版,还增加了从任何地方安装IPA文件的能力。他还对Delta模拟器做出了改进,增加了对iPad和AppleTV的支持,并实现了跨设备同步保存文件的能力。
但是有一样东西没有发生太大的变化,那就是商店的组件。尽管Testut最初的设想是让任何人的app都可以在AltStore上架,但到目前为止,Delta和Clip是唯一可以直接安装的app。
Testut说他现在正在部署基础设施,打算扩展AltStore的产品。本周的更新增加了“可信来源”板块,用户可以在上面找到Testut和Gill自行审查的app。
Testut说,这是一个自动化安全系统的前身,可以确保侧载app不能图谋不轨。比方说,侧载的app可能会尝试访问用户的相机、联系人或麦克风,甚至可能执行恶意代码,因此Testut希望开发出一些有助于将潜在损害降至最低的功能。
Testut说:“侧载存在很多风险。因为我们是大众使用的工具,所以有责任确保我们竭尽所能,防止用户一不小心就受骗上当。”
引入新的app
至于AltStore打算上架什么类型的app,Testut指出UTM是其中之一,这款app可以用来支持在iPhone或iPad上运行其他操作系统(如Windows和Linux)的虚拟化版本。
UTM有赖于即时(JIT)编译功能。这项功能可以动态生成原生代码,而不是提前解析,从而加速仿真的速度。虽然苹果不支持使用JIT的app(在iOS14的某些版本曾短暂添加过这项功能,但后来又删除了),但Testut已经想出了让它在AltStore能用的办法。(唯一的问题是使用JIT的app在加载时必须连接到AltServer。)
化名叫做Osy的UTM开发者说:“你以为允许高性能app上架对苹果应该是有利的,因为他们在不断制造越来越强大的iPad,但对iPad软件的放行状态却一直停滞不前。这就是我最初要做UTM的原因之一,因为我认为这么强大的硬件却没有任何软件可以利用很可惜。”
对于AltStore还能怎么玩,Testut还有别的想法。增加可以模拟的游戏机型号显然是选择之一。他还希望能看到用自己的渲染引擎而不是苹果的WebKit,后者是苹果应用商店所有的第三方Web浏览器的必须。(部分开放web倡导者认为这阻碍了该平台的创新。)由于不透明或无聊的原因而被禁止的app,比方说提供类似iPod界面的音乐播放app,也会受到AltStore的欢迎。
Testut指出,在技术上来说,AltStore不存在允许或禁止app的说法,因为用户可以自由地侧载他们在网络上找到的任何IPA文件。但通过在AltStore本身上架精选的app,他希望能够推广不被苹果允许的那些原创想法和实验。
他说:“苹果对应用商店的做法是,只有他们已经能想象到的东西才能获得批准,所以任何突破界限的东西,苹果都会拒绝。我们需要先找到一种办法让app能够突破限制,然后大家就会看到这样的东西的存在,并希望它出现在应用商店上。”
应用商店的添加剂
鉴于Testut对侧载的热情,你也许会预期他对迫使苹果开放旗下平台的法律会持支持的态度。在美国,在两党支持下,《开放应用市场法案》(OpenAppMarketsAct)已获参议院司法委员会通过。该法案将让侧载成为对主流智能手机平台的强制要求。欧洲理事会和欧盟议会已就强制侧载的规则暂时达成一致。(谷歌的安卓操作系统已经支持侧载。)
然而事实是,Testut仍对任何让侧载变得过于容易的法律保持警惕,因为他说Facebook等大公司会将自己的app从应用商店下架,从而避开苹果的隐私保护。他更喜欢有点繁琐的侧载过程,这样可以确保侧载仍然是更懂技术的那些用户的领地。
他说:“说实话,我们不喜欢这些法案。我们真心觉得这些方案管得太宽了,会对消费者隐私产生严重影响。”
当然,这种立场也有自私的一面:如果侧载非常简单的话,可能就会消除对AltStore之类服务的需求,并导致Testut多年的工作变得过时。
但Testut也在为这种可能性做着准备。他认识到,推动更开放的智能手机平台的动力并非来自那群古怪的独立开发者,而是来自EpicGames和Spotify这样的大公司,通过避开苹果的应用商店规则以及30%的收入提成,这些大公司可以收获很多好处。
因此,把AltStore建立成违反苹果规则的奇怪独立app的集散地就有了动力。如果AltStore最终被迫与EpicGames或亚马逊等公司竞争作为iPhoneapp的来源地的话,它需要给自己一个明确的身份,并鼓励志同道合的开发者加入。Testut和商业伙伴ShaneGill现在正在认真开展这项工作。
Gill说:“这些都是苹果应用商店目前不允许出现的app。我们其实是在做大蛋糕,而所有其他人则是想自己多分一点。”
(36氪)