從蘋果App Store以外的地方安裝 app 的最好方式之所以成為可能,是因為萊利‧泰斯特(Riley Testut)想在自己的 iPhone 上玩精靈寶可夢。
萊利還在上大學時,就開始在 iPhone 上開發模擬器,讓他可以在iPhone上玩經典 Game Boy 遊戲。但後來蘋果不再允許這款 app 上架到蘋果的App Store,於是他開始尋找解決方法,而結果就是 AltStore,它可以讓 iPhone 和 iPad 使用者安裝萊利自己為舊的任天堂遊戲準備的 Delta 模擬器,以及任何蘋果認為超出限制的其他 app——這個過程叫做側載(sideloading)。
AltStore 的下載量現在已超過 150 萬次,這項服務的月活躍使用者數超過了 30 萬。這些使用者當中有將近 6000 名使用者為 AltStore 的 Patreon (線上捐款)帳戶捐獻,每月可為他帶來超過 14500 美元的收入,而支持者也能儘早獲得新功能。
蘋果現在正面臨更大的政治壓力,要讓使用者可以從App Store以外的地方安裝 app,而 AltStore 正在為迄今為止最大的更新做著準備。使用者很快就可以透過 AltStore 發現新的 app,直接側載安裝,而不必花力氣去到處找下載網站。 iPad 的最佳化也在進行中, 萊利最近聘請了自己的老朋友謝恩‧吉爾(Shane Gill),請他幫改進 AltStore 的檔案,並致力於開發者的外展工作,從而讓萊利能夠抽出更多的時間寫程式。
萊利說,他的目標是將 AltStore 變成避風港,作為與蘋果App Store政策發生衝突的那些獨立 app 的避風港。
他說:「現有的 app 們很無聊。沒有酷炫有趣的 app 出現。我們希望在 AltStore 裡面能看到更多小巧、古怪、有趣的 app。」
AltStore 的工作機制
AltStore 模仿了蘋果的 Xcode 程式軟體的一項功能,這項功能可讓開發者在實際的 iPhone 和 iPad 上測試他們自己的 app。那項功能是在 2015 年推出的,表面上是針對想要涉足 app 開發的學生,但實際上它允許任何人在開發者帳戶的情況下側載 app。
萊利 說:「當蘋果宣佈這一消息時,我想,『喔,所以還是有某種辦法只用一個 Apple ID 就可以將 app 安裝到 iOS 上的』。我就是從這一點出發,然後擴展成一個完整解決方案的。」
要想啟用側載,使用者必須在 Mac 或 Windows PC 上安裝一個叫做 AltServer 的配套 app。然後,這個程式會使用他們的 Apple ID 幫助使用者登錄進去,並設定好他們的帳戶好支援開發,同時對 AltStore 的 app 進行簽名,使它看起來好像是使用者自己創建的。之後,AltServer 再使用 iTunes 同步協定將 AltStore 發送到使用者的 iPhone 或iPad 上面。
安裝了 AltStore 之後,使用者只需點幾下就可以加入萊利的 Delta 模擬器或 Clip 剪貼簿管理器,而且還可以使用 . ipa 檔案格式安裝App Store以外的其他 app。(主要社群媒體 app 的無廣告版似乎特別受歡迎,其他經典的遊戲模擬器也很熱門。)
由於 app 簽名過程以及要通過 Xcode 實施側載的限制, AltStore 確實存在一些限制:只有與運行 AltServer 的 Mac 或 PC 處在同一個 Wi-Fi 網路的情況下,使用者才可以安裝新的 app,而且除了 AltStore 以外他們最多只能再安裝兩個 app。雖然使用者可以隨時更換這兩個 app,但 AltStore 每週最多也只能側載 10 個 app,而且每個 app每週都必須透過與 AltServer 的連接「更新」一次。
這種作法的的體驗也許感覺有些不可靠,app 偶爾也會出現沒法更新,或者在安裝過程中安裝失敗的情況,但它所帶來的回報也非常巨大。我在旅途的過程中會用 AltStore 玩經典的任天堂遊戲(用 Razer Kishi 控制器),這也讓我的 Pebble Watch 變得再次可用(去年秋天它的 app 已經從蘋果App Store消失了),甚至還能享受沒有廣告的 Twitter。
在阻止這種行為方面,萊利不相信蘋果有多少事情可以做。雖然他偶爾要被迫處理一些小障礙——比如 Apple 禁用了他一直依賴的一種簡單的帳戶身份驗證方法——但 AltStore 最終利用蘋果本身為開發者提供的側載方法繞開了限制。
要想徹底阻止 AltStore ,蘋果需要對自己的工具完全的重新設計,要不就得修改針對開發者的政策,而在要求蘋果放鬆App Store對 app 下載壟斷的監管壓力下,蘋果也許覺得不值得費這些力氣。(萊利說他從未就 AltStore 與蘋果直接接觸過;蘋果則沒有回應置評的請求。)
萊利說:「把能做的都做了是很容易,但他們不會破壞自己的開發流程。另外,現在就盯上一款替代App Store從公關角度來說很糟糕。」
建立一個真正的商店
自 2019 年以來 AltStore 就一直是萊利的全職工作。那一年,他在 Patreon 上發起了一項贊助活動,讓支持者可以連接 AltStore 的測試功能。慢慢地,他把 AltStore 做得更加可靠,並且推出了 AltServer 的 Windows 版,還增加了從任何地方安裝 IPA 檔案的能力。他還對 Delta 模擬器做出了改進,增加了對 iPad 和 Apple TV 的支援,並做到了跨設備同步保存檔案的能力。
但是有一樣東西沒有發生太大的變化,那就是商店的組件。儘管萊利最初的設想是讓任何人的 app 都可以在 AltStore 上架,但到目前為止,Delta 和 Clip 是唯一可以直接安裝的 app。
萊利說他現在正在部署基礎設施,打算擴展 AltStore 的產品。本周的更新增加了「可信來源」模組,使用者可以在上面找到萊利和謝恩自行審查的 app。
萊利說,這是一個自動化安全系統的前身,可以確保側載 app 不能圖謀不軌。比方說,側載的 app 可能會嘗試存取使用者的相機、聯絡人或麥克風,甚至可能執行惡意程式,因此萊利希望開發出一些有助於將潛在損害降至最低的功能。
萊利說 :「側載存在很多風險。因為我們是大眾使用的工具,所以有責任確保我們竭盡所能,防止使用者一不小心就受騙上當。」
引入新的 app
至於 AltStore 打算上架什麼類型的 app,萊利指出 UTM 是其中之一,這款 app 可以用來支援在 iPhone 或 iPad 上運行其他作業系統(如 Windows 和 Linux)的虛擬化版本。
UTM 有賴於即時(JIT)編譯功能。這項功能可以動態生成原生程式碼,而不是提前解析,從而加速模擬的速度。雖然蘋果不支援使用 JIT 的 app (在 iOS 14的某些版本曾短暫加入過這項功能,但後來又刪除了),但 Testut 已經想出了讓它在 AltStore 能用的辦法。(唯一的問題是使用 JIT 的 app 在載入時必須連接到 AltServer 。)
化名叫做 Osy 的 UTM 開發者說:「你以為允許高性能 app 上架對蘋果應該是有利的,因為他們在不斷製造越來越強大的 iPad ,但對 iPad 軟體的放行狀態卻一直停滯不前。這就是我最初要做 UTM 的原因之一,因為我認為這麼強大的硬體卻沒有任何軟體可以利用很可惜。」
對於 AltStore 還能怎麼玩,萊利還有別的想法。增加可以模擬的遊戲機型號顯然是選擇之一。他還希望能看到用自己的算繪引擎而不是蘋果的 WebKit,後者是蘋果App Store所有的協力廠商 Web 瀏覽器的必須。(部分開放 web 宣導者認為這阻礙了該平臺的創新。)由於不透明或無聊的原因而被禁止的 app,比方說提供類似 iPod 介面的音樂播放 app,也會受到 AltStore 的歡迎。
萊利指出, 在技術上來說,AltStore 不存在允許或禁止 app 的說法,因為使用者可以自由地側載他們在網路上找到的任何 IPA 檔。但透過在 AltStore 本身上架精選的 app,他希望能夠推廣不被蘋果允許的那些原創想法和實驗。
他說:「蘋果對App Store的做法是,只有他們已經能想像到的東西才能獲得批准,所以任何突破界限的東西,蘋果都會拒絕。我們需要先找到一種辦法讓 app 能夠突破限制,然後大家就會看到這樣的東西的存在,並希望它出現在App Store上。」
App Store的添加劑
鑒於萊利對側載的熱情,你也許會預期他對迫使蘋果開放旗下平臺的法律會持支持的態度。在美國,在兩黨支持下,《開放應用程式市場法案》(Open App Markets Act)已獲參議院司法委員會通過。該法案將讓側載成為對主流智慧型手機平臺的強制要求。歐洲理事會和歐盟議會已就強制側載的規則暫時達成一致。(Google的Android作業系統已經支援側載。)
然而事實是,萊劉仍對任何讓側載變得過於容易的法律保持警惕,因為他說 Facebook 等大公司會將自己的 app 從App Store下架,進而避開蘋果的隱私保護。他更喜歡有點繁瑣的側載過程,這樣可以確保側載仍然是更懂技術的那些使用者的領地。
他說:「說實話,我們不喜歡這些法案。我們真心覺得這些方案管得太多了,會對消費者隱私產生嚴重影響。」
當然,這種立場也有自私的一面:如果側載非常簡單的話,可能就會消除對 AltStore 之類服務的需求,並導致萊利多年的工作變得過時。
但萊利也在為這種可能性做著準備。他認識到,推動更開放的智慧型手機平臺的動力並非來自那群古怪的獨立開發者,而是來自 Epic Games 和 Spotify 這樣的大公司,櫱過避開蘋果的App Store規則以及 30% 的收入分成,這些大公司可以收穫很多好處。
因此,把 AltStore 建立成違反蘋果規則的奇怪獨立 app 的集散地就有了動力。如果 AltStore 最終被迫與 Epic Games 或Amazon等公司競爭作為 iPhone app 的來源地的話,它需要給自己一個明確的身份,並鼓勵志同道合的開發者加入。 萊利和商業夥伴謝恩現在正在認真開展這項工作。
謝恩說:「這些都是蘋果App Store目前不允許出現的 app。我們其實是在做大這個市場,但所有其他人則是想自己多分一點。」
加入電腦王Facebook粉絲團