獨家|Google決定終止開源Android

Google
閉源
出於新聞報道和純興趣討論目的,愛範兒對知名科技公司的戰略做過各式各樣的「沙盤推演」,設想了許多場景。
但沒想到,最不可能的一種情況,居然正在 Google 身上發生。
Google 已經決定停止 Android 開源專案(AOSP)。
AOSP(Android Open Source Project) 是 Google 主導的開源專案,為所有 Android 裝置作業系統提供基礎框架和核心元件。它相當於一個「毛坯房」,開發者可自由下載、修改和分發其程式碼,並基於此構建定製化系統,包括 Xiaomi HyperOS、vivo OriginOS、OPPO 的 ColorOS、甚至 Pixel 手機的 Android 系統,都是基於 AOSP 構建的。
Google 對 Android 的維護分為兩條路徑:公開的 AOSP 分支面向全球開發者開放,包含純淨的開原始碼,不涉及任何 Google 專有服務。任何廠商或個人均可基於此分支開發系統。而內部閉源分支僅供簽署了 GMS(Google Mobile Services) 協議的廠商使用。

具體來說,Google 將不再維護目前 AOSP 的公開分支,逐漸關閉相關的的支援性資源,並可能停止更新有法定開源義務(GPL 等協議的程式碼)外的元件的原始碼。
海外媒體 Android Authority 最先報道了這一情況,Google 也確認了此事。
從下週開始,所有的 Android 開發工作將僅在 Google 的內部分支進行。在一段時間後,外部分支可能將不再公開甚至徹底關閉。並且,AOSP 的持續整合/交付 (CI/CD) 工具和環境也可能關閉,甚至 Android Gerrit 也可能會關閉。
從今往後,只有 Google 內部的員工能夠訪問 AOSP 的內部分支,或是提交程式碼。Android 的開發過程將不再透明。
從高維度來看,Google 將逐步縮減 AOSP 所包含的內容,直至 AOSP 作為開源專案,以及作為一種概念,都不復存在。
以史為鑑,OpenSolaris 專案(也就是 Solaris 作業系統對應的開源專案)在 Oracle 在收購 Sun,宣佈對 OpenSolaris「延遲開源」後,直到 Solaris 開發部門解散為止,都沒有以 CDDL 許可證開放過半句程式碼。
誰也不知道,Google 對 Android Authority 承諾的「繼續開源,只是推遲」,是不是隻是一句空話——畢竟無限期的推遲,也是一種推遲。
根據愛範兒的瞭解,Android 閉源的總體思路是最終只保留 GPL 強傳染許可證要求開源的部分,主要是 Linux 核心態驅動和補丁。其他中層、上層等之前採用 Apache 等寬鬆開源許可證的部分,最終會閉源;未來的 Android 版本釋出後也不再對外公開發布、更新原始碼。
此事的決策層級在 Google 高層管理者級別。據信他們做出此決定的時間不晚於 2025 年初。整個策略的執行將會在一個更長的期限內完成,至少持續數年,直到 AOSP 徹底失去意義。
Google 此舉的真實動機尚不明確,但根據愛範兒的分析和了解,主要是為了節約開支和增加收入
AOSP 在不同的維度上(比如版本號、釋出進度等)有著多條程式碼流水線和大量的分支。再考慮到專案的上下游程式碼、多公司之間的協作,進一步複雜化,維護管理起來非常困難,產生大量的計算資源和工時成本。Google 可能希望節約這些成本。考慮到 2025 年初 Android 部門已經向所有員工提供了「自願離職」的選項,削減開支的思維邏輯不難理解。除此之外,簽署了合作伙伴協議的廠家也有義務捆綁 Google 服務,為 Google 提高廣告收入,變相提高了公司的整體收入。
好在目前來看,閉源 AOSP 對業界的直接影響並非災難性,對終端手機使用者直觀影響也微乎其微。
絕大多數主流手機廠商早就和 Google 簽訂了各種授權合作伙伴協議。在現有協議安排下的廠商,仍然可以得到和使用最新 Android 原始碼,獲得 Google GMS 認證,正常預裝 Google Play、Gmail 等服務和應用,得到 Google 的支援。一切生意照舊。
真正的影響更多不會直接展現,而是會在更長的時間裡從側面體現。後文會詳細解讀。
AOSP,不存在了?
如下幾點需要澄清:
1.
因為大部分 AOSP 程式碼透過 Apache 2.0 許可證發行,任何人都可以 fork 一份。其他程式碼服務平臺上也有各種 AOSP 的映象,例如 GitHub 和國內的 Android 社群。Google 無權要求其它「非官方」 AOSP 程式碼庫下線。已經開源的,無法被撤銷開源。
2.
也就是說,只要能從其他非官方渠道下載,人們仍然可以使用 Google 最後更新的 AOSP 程式碼,也可以按照自己的需要對其進行修改。原則上如果你有足夠多厲害的開發者,也可以把之前的 AOSP 變成自己的系統,去維護和更新。
Android/AOSP 從來不是一個真正的開源專案,社群裡的原教旨主義者也一直對其頗有微詞。
前文提到,Android 目前運行於 Linux 核心上,後者是 GPL 許可證開源的。GPL 是一個強傳染性的許可證,要求所有衍生工作都必須按照 GPL 許可證同樣開源,從而貫徹無限開源、擴大社群的精神。
而當年 Google 為了構建 Android 商業生態,建立了平衡開源與商業需求的許可模型。Google 將 Android 平臺分為幾個部分:底層的 Linux 核心部分保留 GPL v2 許可證(按照要求),而 AOSP 的大部分程式碼則採用了更為寬鬆的 Apache 2.0 許可證。
這種許可結構使裝置製造商能夠修改和定製 Android 而不必開源所有修改,同時允許企業在 Android 平臺上構建專有應用和服務。
Google 自己的專有服務 GMS (Google Mobile Services) 則與 AOSP 分開,並採用不同的許可條款。這種混合方法建立了一個既保持開放性又為生態系統提供商業靈活性的模型。
具體來說,Linux 核心基於 GPL 許可證,雖然 kernel module 需要依據 GPL 強制開源,然而 userspace 應用並不受 GPL 傳染性的影響,因此無需開源。部分 userspace 應用程式也與傳統的 Linux 發行版不同,例如使用 bionic libc 替代 glibc,使用 toybox 替代 busybox 等。此外,Google 還使用了「硬體抽象層」(HAL),允許廠商將不想公開的商業機密資料,比如一些特定的專有功能對應的背後程式碼和邏輯,存放在這一層上面,即提供了一套 stable ABI(應用二進位制介面),使得廠商可以獨立於 Android 框架層更新他們的專有程式碼。
當然 Linux 基金會對 Google 這種違背開源精神的操作方法很不爽,一度將 AOSP 從 Linux 開源專案中除名。
結果就是,AOSP 底層部分按照 GPL 開源的,大量中層按照 Apache 寬鬆開源(部分閉源),在此基礎上的應用就可以自行按照開發者意願和商業目的選擇各自的開閉源屬性了。
Google 自己也是這樣做的。事實上,自從 2013 年的 Android 4.4 KitKat 之後,所有的 Android 版本都不再完全開源。Google 為 Android 系統開發的一部分驅動、UI,以及應用層的大量大量核心產品和服務,也就是人們熟知的 GMS 套件,都是閉源的。
AOSP 存在著,但它並不是完整的 Android。這也是為什麼很多系統開發者都會強調「原生 Android」(指 Google Nexus/Pixel 的作業系統)不等於 AOSP。
儘管 AOSP 是個開源專案,Google 也不常合併第三方提交的合併請求(合併 AOSP 程式碼需要 Google 員工的批准,而不少 PR 就死在了 Gerrit Review 裡)。這也是不少開發者認為 AOSP 和典型開源專案之間的最大區別。讓參與者難以在 AOSP 裡獲得真正的參與感。
在 AOSP 專案的官網上,Google 寫了這樣一段「治理理念」:
Google 領導 AOSP,負責維護和進一步開發 Android。儘管 Android 由多個子專案組成,但 AOSP 是嚴格的專案管理。Google 將 Android 視為一個單一、整體的軟體產品,而不是一個發行版、規範或可更換部件的集合,並對其進行管理。Google 的意圖是讓裝置製造商將安卓移植到裝置上;他們並不實施規範或策劃發行版。
這段話已經把 Google 的意圖描述的夠清楚了。如果 AOSP 是一頭幹活的驢,那麼卸磨殺驢的時候已到。
Android 閉源,將會帶來怎樣的影響?
主要結論:主流手機品牌和它們的使用者不需要擔心。
首先讓我們重溫一下Google 和 Android OEM 之間的協議關係:
1.
AOSP,任何廠商都可以使用 AOSP 進行開發,不需要獲得Google 的同意;
2.
Android 相容性承諾協議 ACC、移動應用分發協議 MADA、企業裝置補充協議 EDLA 等,不一而足。透過協議,Google 和 OEM 之間建立商業約束。簽訂了 ACC 協議的 OEM 透過 AOSP 開發的作業系統,才能夠稱之為 Android 作業系統,獲得 Android 商標使用權等權益。
3.
Google 移動服務 GMS,包括Google 服務核心、賬號體系等後臺功能,以及前臺的 Google Play 商城、YouTube、Gmail、Calendar 等應用。公司簽署了上述協議,並且手機型號通過了Google 相容性測試,才可以預裝 GMS。
ACC、MADA/EDLA 等協議的組合,確保了Google 對 Android 作業系統有著大體上的絕對控制。
包括小米、vivo、OPPO、三星等在內的當今絕大多數 Android 手機品牌,和Google 都簽訂了協議。沒有意外的話,Google 應該已經聯絡它們進行安撫,並且確保未來的合作照常進行了。
在過去有相當一部分裝置和晶片廠商,它們利用 AOSP 開發產品,卻不從 Google 獲得 Android 裝置認證,裝置不需要預裝 GMS 全家桶,也能夠避開 Google 的認證要求。
非認證 Android 裝置五花八門,數以十億甚至百億計。透過這次閉源 AOSP,Google 有可能引誘非認證裝置廠商向自己低頭,簽訂前面提到的各種協議。
一種極有可能出現的情況是,基於 AOSP 開發的智慧座艙系統,可能程式碼也不會再無償提供給全世界的廠商了。除非車企和 Google 簽訂協議,它們將無法得到最新的程式碼。當然,車企也可以繼續使用已經開源的舊系統開發。
這不是已經發生的事實,只是一種可能性。Google 這次閉源 Android,不排除有一個小的動機就是試圖奪回非認證裝置市場,或者至少能夠從中分一杯羹。這個大市場,雖然是裝置廠商自己打下的,但如果沒有 AOSP 確實也不會是今天的樣子。
順著這個角度,非認證 Android 裝置消費者可能就會受到影響了,當然同樣不會很明顯。影響主要來自財務方面:OEM 想繼續預裝 Android 作業系統,就必須要服從 Google 對裝置的管理和要求。這個成本當然會被轉嫁給消費者,導致支付更高的價格。除此之外,消費者也只能使用 Google Play 等渠道下載應用,第三方應用市場(例如 F-Droid)等的生存空間也變得更少,Google 也可以向所有的應用內支付收一筆費用。
部分廠商可能不願意屈從 Google,產品退出市場,消費者的選擇權就縮減了;但與此同時,任何 Google 在閉源之前已經發布的 AOSP 程式碼,理論上仍然可以使用。廠商可以隨意 fork 程式碼,自己開發、更新、維護。估計智慧冰箱的消費者不會在意冰箱是否預裝最新 Android 作業系統。
不過,這恐怕就又回到了「Android 碎片化」的老生常談:如果非授權裝置廠商繼續一意孤行,用老的、不再有官方維護的程式碼去開發產品,屆時碎片化恐怕就不是版本號那麼簡單了——而是可能出現類似於今天的中國,推送、版本、功能、外觀、名稱、體驗等全方位碎片化,並且向全球範圍擴大的一副詭異圖景。
開發者權益侵害
AOSP 的閉源,對於 Android 應用第三方 ROM 開發者來說,影響更為明顯。
曾經 Android 第三方 ROM 百家爭鳴的景象,也將被歷史掩埋。ROM 開發者的最好結果,是用 AOSP 最後更新的版本去修改,然後維護當前版本,到它慢慢過時,直至最後放棄這項事業。
至於應用開發者,他們過去使用 Android Studio、VS Code 等開發環境,可以從 Google 獲取需要的 SDK,在後 AOSP 時代內應該暫時不會有太大的直接影響。
不過在此之前,由於 Android 已經存在相當程度的碎片化情況,開發者為了適配各版本系統、各品牌機型,需要獲得不同廠商的系統程式碼,以及裝置作為測試機。這對於中小型,特別是獨立開發者來說都是不小的成本。目前尚不清楚這種情況在今後會不會愈演愈烈。
如果中小開發者生存環境被遭到進一步擠壓,傳導效應就是強者恆強,創新被遏制,進而發生更多的壟斷。因此,Google 在做了它該做的事情之後,應該要給出後續方案,確保中小開發者的生存。
最極端,卻又最不出意外的做法
此前在中美技術脫鉤的大背景下,愛範兒曾經構思過 Android 對中國手機廠商「斷供」的幾種可能性:禁止在海外銷售的手機中顯示 Android 商標、禁止預裝 GMS、對中國廠商「指向性」閉源 AOSP,甚至中止這些廠商的授權並將其從 OHA 中解約/除名。
在所有可能性中,完全閉源 AOSP 是可能性最低的。愛範兒一度認為這樣做實在太不體面了。
在智慧移動裝置的萌芽階段,Google 做出開源 Android 的決定,不僅獲得了技術開放的名譽,更是在當時將大量廠商和使用者從塞班、Windows Mobile,以及諾基亞和黑莓的手中贏了過來。
當然,諾基亞、黑莓和微軟各自走了彎路,對Google 獲勝起到不小的助攻作用。但 Google 開源 Android,毫無疑問,是今天 Android 在移動作業系統市場搶下超七成份額的道路上,最正確的決定。
Google 內部仍有員工認可開源這項事業的科技普及化意義和長期價值。無論出於業務和上級要求,還是個人身份,他們為 Android 專案編寫程式碼,做維護工作,而 AOSP 也是這些工作的載體。然而 AOSP 對於 Android 和 Google 的商業價值,早已不可同日而語。
儘管這次操作的主要動機是節約成本,但長期來看,也會對 Google 增加收入帶來一定幫助。畢竟在過去,Google 很難從那些執行基於 AOSP 作業系統的非認證裝置上獲得直接收入或資料等間接利益。
在這一事件之前,Google 透過 Android 賺錢的方式,主要是在夥伴協議的框架下對 OEM 進行收費授權認證。想要在商業合規的框架下使用 Android,廠商需要簽署協議。具體協議內容方式等細節可能會有不同,但大的規則是不變的。Google 的主要收入來源是透過預裝的Google應用和服務(搜尋、Play商店等)獲取的廣告收入和應用分成。
顯然,非認證裝置無法給 Google 創造收入,AOSP 的存在卻「給人做嫁衣」,作為任何一家商業公司恐怕都想要儘快跟這些裝置和廠商切割。
文|杜晨
我們正在招募夥伴
📮 簡歷投遞郵箱[email protected]
✉️ 郵件標題「姓名 + 崗位名稱」(請隨簡歷附上專案 / 作品或相關連結)
更多崗位資訊請點選這裡🔗

相關文章