蘋果在今年的 WWDC 上介紹,Mac 產品線將拋棄英特爾 CPU 改用自研 ARM 芯片,那時候,他們拿微軟的 Office 套件作了演示。
幾個月后,搭載蘋果自研芯片 M1 的 MacBook 上市,只要開發者將 iOS 端的 app 也放到 macOS 的 App Store 里,用戶就能在電腦上運行原生移動端應用了。
macOS 一下子成為了目前應用生態最豐富的桌面操作系統。
而依然占據市場主流的 Windows,近幾年卻似乎沒有拿出讓消費者驚喜的更新,反而是在蘋果生態里積極適配新應用,做起了「最佳 iOS 開發者」。和在系統統一上大步流星的蘋果相比,微軟就像是一頭在原地打轉的大象,
現在,這頭大象似乎急了,
上月底,長期關注 Windows 的垂直媒體 Windows Central 發文稱,有知情人士表示微軟內部正在推行一個代號為「Project Latte」(拿鐵)的計劃,而這個計劃的目的是讓 Windows 10 最早在明年原生運行 Android app。
值得注意的是,「拿鐵」支持的 Android app 運行,并不是通過雙系統或者虛擬機(指是用代碼虛擬一個硬件,讓軟體以為自己運行在 Android 行動電話上)的方式,而是在 Windows 10 里內置一個子系統,用子系統運行 Android app,相較于應用層(虛擬機)會消耗更少的資源,并且與系統鍥合度更高,
那么,微軟將如何實現這個應用移植的過程?最重要的是,微軟為什么要這么做?
將兩個平臺的應用混合成「拿鐵」
據 Windows Central 的消息,微軟正在打造一個軟體解決方案,在這個方案的助力下,開發者只要將他們的 Android app 打包成 MSIX 應用,然后提交到 Microsoft Store 就可以了。也就是說,Android 開發者幾乎無需改動 app 就可以多擴展一個桌面平臺。
對用戶來說,如果適配工作順利,我們就能在電腦本地上運行大量不提供 web 端的移動端應用,比如抖音和外賣應用,需要注意的是,這和 Windows 10 之前支持的「Your Phone」實現原理完全不同。「Your Phone」同樣也能讓用戶在 PC 的桌面上和 Android app 交互,但它本質上是「行動電話投屏」。
具體來說,用戶可以使用行動電話屏幕鏡像功能將屏幕映射到 PC 上,然后使用鍵鼠和觸摸屏直接與 app 進行交互,而且,由于微軟選擇和三星深度合作,其他品牌的行動電話并不支持這項功能。如果「拿鐵」推出,用戶無需連接行動電話就能跑安卓應用,
說回「拿鐵」的實現方式,微軟將直接在 Windows 10 內置一個運行 Android 的子系統。早在四年前,微軟就曾在系統里內置了子系統 Linux,系統名為:Windows Subsystem for Linux(WSL)。在隨后的更新中,用戶可以直接通過 Microsoft Store 下載子系統,而可選擇的發行版也從最初的只有 Ubuntu 變成可以選擇 Suse、Ubuntu、Debian、甚至是用來進行網路安全工作 Kail Linux。這樣一來,WSL 補充了原本 Windows 10 在開發領域上的一些不足,讓開發人員可以以較低成本來實現與生成環境的一致性,也不用再為了開發而安裝雙系統甚至虛擬機了。
但和 Linux 相比,Android 只能算是部分開源,完整的 Android 系統包含 AOSP 和 Google 移動服務(Google Mobile Service, GMS),前者為開源部分,但只包含了像郵件和電話這樣的常用功能,后者為需要經過授權才能使用的 Google「全家桶」,包括 Google Search、YouTube、Chrome、Google Play 商店和各種云服務,GMS 屬于 Android 的閉源部分。另外,GMS 中的 API 依托 Google 服務器運行。選擇定位等 API,能讓開發者的 app 更加流暢地運行,也會更加省電。也就是說,在 Windows 上運行 Android 應用,接入不了 Google 服務,也可能不那么流暢和省電,
另外,Google 并不允許 Play Services 安裝在 Android 行動電話和 Chromebook 之外的設備上,也就說,這些 Android 應用無法通過 Google Play 進行更新,
微軟將如何解決這些移植應用的「不完整」,目前還不得而知,
五年前,微軟就干過一樣的事
早在 2015 年,微軟就宣布了一個名為「Project Astoria」的方案,同樣,Android 開發者只需要將應用安裝包拖拽到微軟的轉制后臺上,就能立馬運行在移動系統 Windows 10 Mobile 上。
對于當時的微軟來說,Android 應用的移植顯然就是對 Windows 10 Mobile 極其匱乏的應用生態的無奈補救,但可惜的是,僅一年后,微軟就放棄了 Project Astoria,它在移動的戰場上也敗北了。
Surface Neo 將搭載專門為它兩塊 9 英寸大小設計的化 Windows 10X|微軟
五年后的今天,微軟發布了基于 Android 系統的折疊雙屏行動電話 Surface Duo,這可以看作是它「討好」Android 的信號;另外還有將會延期一年上市的折疊雙屏 PC Surface Neo,
Surface Neo 將搭載專門為它兩塊 9 英寸大小設計的 Windows 10X,鑒于現在 Windows 原生應用 UWP 的匱乏,移植過來的 Android 應用也能成為聊勝于無的補充。
之所以說「聊勝于無」,是因為基于 Android 平板開發的「大屏」應用同樣匱乏,大部分 Android 應用仍是與小尺寸的行動電話高度綁定的,開發和操作的邏輯和桌面系統的交互必然存在很多不相容的地方,但如果開發者愿意為「桌面擴展」提供界面優化,配合比模擬器更高效的 Android 子系統運行,「拿鐵」所帶來的應用融合體驗仍然讓人期待,
在這些應用里,搬到桌面環境體驗最好的應該就只有游戲了,到時,成為聚合這些 Android 游戲的平臺方,同樣可以依靠內容分發賺取利潤,
更重要的,M1 版 MacBook 的上市,強力推進了桌面生態必將和移動生態大一統的趨勢。當 macOS 用戶可以在桌面上跑 iOS 應用的時候,Windows 用戶或許會對微軟提出跑 Android 應用的訴求:我可以不用,但不能沒有,而微軟同樣也在做遷移到 ARM 的嘗試,今年,配置了高通芯片的 Surface Pro X 上市。
而「拿鐵」的意義或許就在于可以讓 Android 開發者一同構建 Windows 未來的生態,而不是將當前 Android 的生態吸收到 Windows 中。開發者只要開發 Android app 就可以了,不需要多平臺開發,
如果這個計劃順利,那么 Windows 10 將成為一個在 app 支持方面幾乎「通用」的操作系統,