華為面臨「Android 斷供」背後,一個開源系統是怎麼走向閉源的
不久前華為消費者業務 CEO 餘承東公開表示華為手機已經快沒芯片可用了,最近美國又 「拉黑」了華為 38 家子公司,以切斷華為外購芯片的渠道。
除了芯片受限,軟件層面華為也再次面臨「Android 斷供」。
去年華為被美列入「實體清單」後,不能再使用 Google 一系列服務和應用,雖然此後臨時通用許可多次延期,但也在這個月過期了。
儘管華為迴應稱就算沒有 Google Play 手機系統也會繼續更新,但這依然是是懸在華為頭上的達摩克利斯之劍,也讓鴻蒙系統再次備受期待。
實際上,「Android 斷供」並不是一個完全準確的説法。因為 Android 系統是開源的,美國政府根本無權干涉,可華為還是會因為 Google 的限制受到不少影響。
▲ 圖片來自:9to5Google
這是因為 Google 多年來一直在掏空 Android 的開源部分,讓這個全球最大的手機操作系統,一步步從開源走向閉源。
因此被扼住喉嚨的,也不止華為一家廠商。
Android:開源的殼,閉源的核
這又是一個屠龍勇士變成惡龍的故事。
2007 年,發生了兩件事,將智能手機帶入一個新時代。一個是蘋果發佈 iPhone ,另外一件事就是 Android 的誕生。
與 iOS 不同,Android 系統部分採用了 Linux 內核,Google 也以開源的方式將 Android 公開授權給所有廠商。
▲ 圖片來自:Vox
Google 這一舉動其實是為了對抗閉源的 iOS 系統,以開源系統來讓 Android 快速擴大規模,而且 Android 大部分的 API 還都支持 iOS 系統,對開發者十分有吸引力。
「Android 之父」Andy Rubin 當時曾表示:
引用如果 Google 無動於衷的話,我們將不得不接受一個十分可怕的未來,一個沒有選擇的世界:同一個人,一個公司,一部手機,一個運營商。
得益於開源策略,2010 年 Android 系統的市場份額已經超越了在手機市場上稱霸十多年的諾基亞 Symbian 系統,成為全球第一大智能手機操作系統。
可此時 Android 的開源對 Google 來説不再是一個驅動增長的引擎,反而成了一個不能忽視的風險。
因為基於 Android 的開源許可證,別的廠商完全可以自行基於 Android 的源代碼開發一套新系統來取代 Android,這樣的例子在開源世界裏並不罕見。
此外如果 Android 遵循 Linux 內核的 GPL 許可證,意味着所有對源代碼的修改都要開源,這會讓採用 Android 的硬件廠商不得不公開硬件驅動和應用程序的源代碼,這相當於讓他們將核心技術公之於眾。
▲ 圖片來自:The New York Times
於是 Google 採用了另外一個開源許可證 ASL 繞過這個問題,因為 ASL 許可證規定,第三方可以隨意使用源代碼,且不必開源。
也因為這樣,Linux 內核的項目項目維護負責人 Greg Kroah-Hartman 在 2010 年宣佈將 Android 代碼從 Linux 內核代碼庫中刪除,並暗示 Android 不是真正的開源。
而這僅僅是 Android 閉源之路的開始,之後 Google 逐漸將 Android 分割成兩部分。
一部分是 Android 開放源代碼項目(AOSP),它提供了 Android 的基礎框架代碼,所有廠商可以免費獲取上面的開源代碼。
另外一部分則是 Google 移動應用服務(GMS),包括 了「Google 三件套」在內一系列應用和 API,而 GMS 是閉源的。
如果手機廠商想要使用 GMS ,除了要通過 Google 的對硬件的兼容性測試,每台手機還要支付給 Google 0.75 美元的授權費。
問題來了,廠商們憑什麼放着免費開源的 AOSP 不用,而要接受諸多限制的 GMS 呢?
Google 給出的答案是,讓 AOSP 越來越不好用,讓廠商們越來越離不開 GMS 。
雖然 AOSP 不屬於 Google 一家公司,誰也不能將一套開源系統下架,但 Google 卻可以停止 AOSP 中大量應用和 API 的更新,將升級版本轉移到閉源的 GMS 中。
▲ Android 11 beta 版.
從搜索、音樂到短信等應用,Google 逐漸將 AOSP 裏的應用和 API 一點點掏空,用 GMS 中的應用和 API 來取代,AOSP 裏舊版的的應用和 API 不再升級,經過幾個版本後逐漸就形同雞肋了。
這樣一來,儘管 AOSP 依舊開源 ,但只剩一個底層的外殼,有競爭力的核心部分都在 GMS 中,Google 也能以壟斷的功能牢牢控制住 Android ,並保持對硬件廠商和開發者的影響力。
Android 的本質,就像這篇文章中所形容的:
引用本來大家以為 Android 是手機界的 Linux,但其實它是一個可以讓所有人看代碼、可以讓部分人修改分支代碼、只有 Google 自己才能修改主線代碼的 Windows。
用不了完整版 Android ,真的沒有關係嗎?
正如上文所提到的,只有同時使用 AOSP 和 GMS 才是完整版的 Android 。如果用的是閹割版的 Android,會帶來什麼影響呢?
對於手機廠商來説,這意味着產品競爭力的下降。就像如果 iPhone 如果無法使用微信,在中國的銷量一定會大受影響。在歐美國家,如果手機不支持 YouTube、Gmail、Google maps 等應用,大多數消費者同樣無法接受。
去年美國宣佈華為禁用 Google 的 GMS 服務後,華為手機在海外的銷量就一直下跌,Canalys 的數據顯示,華為手機海外出貨量在今年第二季度同比下降了 27%。餘承東也一度表示:
引用由於 Google GMS Android 系統的斷供,以華為手機為主的消費者業務的確存在漏洞。
當然對於大多數中國用户來説,早已習慣了沒有 Google 服務的 Android 系統,「Google 全家桶」在國內也都有替代,但我們的用户體驗就不會因為 GMS 的缺失而受到影響嗎?
顯然不是的。
過去很長一段時間,國內 Android 手機一直被詬病卡頓、發熱嚴重,很大一部分原因就是不能使用 GMS 的消息推送服務。
無論是 iOS 還是原生的 Android 系統,都有一套系統專用的消息推送服務,第三方軟件無需啟動 ,就能向用户推送消息,應用無需長期在後台運行,系統也就更加流暢。
然而國內的 Android 系統的推送平台基本依靠各個廠商提供,因為不同廠商對系統和應用權限管理標準不一,如果要保證消息及時推送,後台駐留的應用就要增加,大大增加了運存的壓力。
由此帶來的結果是容易卡頓,電量消耗快,這也是為什麼一些國產手機運存增加到 8GB,流暢程度卻可能不及國外 4GB 運存的 Android 手機。
為了解決這個問題,2017 年工業和信息化部牽頭成立了統一推送聯盟,為國內的 Android 消息推送服務建立統一的標準,華為、小米、OPPO、vivo、三星等主流 Android 手機廠商都已經加入,並逐步完成適配。
前段時間統一推送聯盟在 OPPO Find X2 Pro 上測試了系統級統一推送通道,結果顯示手機待機的時間提升多達 43%。
儘管目前國內的統一推送標準還沒完全普及,體驗比起原生 Android 系統還有一定差距,但未來國內 Android 生態的體驗的確可能大幅改善。
對抗 Android 閉源的,不只是華為
為了應對 Android 斷供的危機,華為推出了取代 GMS 的華為移動服務(HMS),餘承東還曾表示,鴻蒙隨時可以用在手機上,一兩天就能完成遷移。
除了華為,過去也有一些廠商嘗試過繞開被 Google 牢牢把控的 Android 系統。
亞馬遜的的 Kindle Fire 雖然仍採用了 Android 框架,但同時推出了一套服務和應用來取代 GMS,搭載的是自家的出包括應用商店、瀏覽器、雲存儲應用。
不過當亞馬遜嘗試將同樣的思路沿用到手機上卻失敗了,最終亞馬遜不得不砍掉了 Fire Phone 業務,1.7 億美元的投入也打了水漂。
此外與 Google 合作的 OEM 廠商不能生產非 Android 兼容版本的設備,否則 Google 有權撤銷該製造商生產任意 Android 設備的許可。
2012 年時,當宏碁與阿里巴巴合作,準備發佈一款搭載阿里雲 OS 的智能手機時,就收到了 Google 的警告,稱宏碁如果使用阿里雲 OS 操作系統,Google 將會解除與其在 Android 產品的合作和技術授權,最終發佈會也被迫取消。
即便沒有 Google 的封殺,手機廠商另起爐灶開發一套系統也並非易事。
從三星和英特爾共同開發的操作系統 Tizen 就可見一斑, Tizen 原本被三星寄予「主打高端手機市場」的厚望,卻一直難以吸引開發者為這個生態開發應用,如今 Tizen 主要運行在三星佔領新興市場的低價機型,以及智能手錶、智能電視等設備上。
這些自研操作系統遇到的困境,也是鴻蒙等國產操作系統將來會面臨的問題,中國開源軟件推進聯盟副主席兼祕書長劉澎曾表示,要開發我們屬於自己的操作系統,可能比造原子彈還難。
開源改變了互聯網,未來也會繼續
1985 年,麻省理工學院人工智能實驗室的程序員 Richard Stallman 提出了自由軟件的概念,要開發一套源代碼可以被自由使用的操作系統、編譯器 GCC 等著名的開源工具出自 Richard Stallman 之手。
▲ Richard Stallman .
開源運動對於互聯網意義非凡,就像霍炬所説的,如果沒有開源運動,可能不會有 Linux 、Android、瀏覽器……整個互聯網可能都不會存在。
引用開源運動可以算是人類歷史上最大的奇蹟之一,來自世界各地的人,在不同的國家不同的制度下,用不同的語言,共同創造了一堆屬於全人類,所有人都可以自由使用的工具。
但開源的自由在今天一點點被侵蝕,除了 Android 走向閉源,全球最大的開源代碼託管平台 GitHub 去年也開始封禁部分國家、地區的開發者賬號,以配合美國的貿易制裁措施。
這引起了不少開發者的擔憂,尤其是中國開發者, 目前 GitHub 上聚集了超過 4000 萬開發者, 其中來自中國開發者的存儲庫貢獻數量僅次於美國。
而在前幾天,工業和信息化部宣佈,選擇碼雲 Gitee 來構建「面向中國的獨立,開放源代碼託管平台」。
儘管開源世界遭遇挑戰,不過開源軟件就是為了打破各種枷鎖和限制而誕生的。如今大型的科技公司,無論是蘋果 Google ,還是騰訊、阿里、華為,都建立了大量的開源項目。
在人工智能等引領下一個時代的技術領域上,開源將作為加速器而存在,開源的深度學習框架,能降低 AI 技術門檻,加速相關產品的落地,小米首席架構師崔寶秋在一次中提到:
引用通過開源可以驗證模型的質量,AI 巨頭也可以通過開源快速佔領市場,處於領先地位。
就像當年的 Android ,現在 Google 又通過開源軟件庫 TensorFlow 逐漸在 AI 領域建立起影響力,小米的 Cloud-ML 平台就是基於 TensorFlow 等開源平台搭建的架構產品。
在開源生態尚未成熟的中國,能否孕育出 Android 這樣世界級的大型開源項目還是未知數,但這無疑會是中國開發者為之努力的目標。
題圖來自:Digital Report
資料來源:愛範兒(ifanr)