說這次的微軟 Build 2015 大會是近年來最激動人心的開發(fā)者大會之一,相信沒多少人反對。微軟轉型之雷厲風行前所未見,這一次不光完全貫徹了“移動為先,云為先”的戰(zhàn)略部署,還有 HoloLens、Edge 瀏覽器等等新酷產(chǎn)品繼續(xù)曝光,普通關注者看得過癮,而開發(fā)者更是尖叫不已。
如果說 Azure 云服務離大眾距離較遠,HoloLens 黑科技一直在 Demo,不知和大眾見面要多久的話,那么 Windows 10 才是面對所有人的大殺器,這一次,微軟謀劃許久的 Universal Windows Apps 終于要變成現(xiàn)實了,順便的,隔壁的 iOS 和 Android 也都有可能參與 Windows 10 的生態(tài)。
首先來看一下 Universal Windows Apps(UWAs)是什么:用戶在微軟的應用商店下載同一款 UWAs 后,安裝在了不同的平臺,譬如 PC 和手機,這同一個應用在不同設備上有著不盡相同,但是一脈相承的用戶體驗。不僅如此,同一款應用可以適應的不同設備之外,在同一款設備上,這一款應用也可以根據(jù)交互不同,改變成不同的形態(tài)。
這里還有一些關鍵技術名為 “Continuum”,這是 Windows 10 的一個關鍵特性,這個特性允許用戶將 Windows 10 for Phone 的內容輸出到其他更大的屏幕上,用戶也可以把手機當作交互設備來控制其他的屏幕,不僅如此,當手機運行的是 UWAs 的時候,這個應用在 PC 端顯示的是 PC 的用戶界面,而不是一小塊手機界面,而這種切換只需要輕輕一點。
理論上,這是一件有歷史意義的改變,開發(fā)者將受益無窮。這意味著開發(fā)者只需要寫一個 UWA 就能跑在所有的 Windows 設備上,開發(fā)者需要做的,就是保證用戶界面的顯示適配各種屏幕尺寸,而且這一點微軟也考慮到了,它們發(fā)布了一系列的工具來幫助開發(fā)者完成適配。
想一想那天晚上奔走相告的開發(fā)者就清楚,Windows 10 激發(fā)起了開發(fā)者前所未有的興趣,Mashable 采訪了 DocuSign 的開發(fā)者 Andrew Fryer,他就對此表示極大的信心:
我認為這是一個了不起的開始,Windows 10 具有很大的潛力,同時大大減少了開發(fā)者開發(fā)需要全平臺覆蓋的應用的工作量。要我說的話,Windows 10 是一個了不起的版本。
于用戶而言,統(tǒng)一的用戶界面自然是好事一件,如果你沒有忘記 Modern 應用和傳統(tǒng)桌面應用的割裂感的話,當然,相信也有一些人像我一樣會認為 Windows 8 下的分屏顯示很有用處,尤其是某些多任務情況下。而一個應用能夠在不同設備上保持類似的用戶界面和交互特性,用戶的流暢體驗感也就隨之而來。
UWAs 的到來給了微軟十足的底氣,所以微軟喊出了這樣的口號:為 Google 開發(fā)應用,你得兼顧 Chrome 和 Android;為蘋果開發(fā)應用,你面對的是 OS X 和 iOS;而我們只有一個 Windows。
微軟顯然寄希望于 UWAs 來拯救和壯大 Windows 的生態(tài),也在傳遞這樣的一種信號。微軟高管 David Treadwell 向 Mashable 解釋說:
通用系統(tǒng)平臺的一個核心價值在于,我們有一系列統(tǒng)一的系統(tǒng)控件。有了這些基礎,開發(fā)者就能一次開發(fā),全平臺收益,比如做一個 file open 的會話框,就能在不同平臺上符合用戶不同的需求。
不過留意下 Build 大會就會發(fā)現(xiàn),前部分關于 Azure 的技術演示中,很詳細的展現(xiàn)了某些實現(xiàn)過程。但是到了 UWAs 就不一樣了,這部分更像是結果呈現(xiàn),而沒有具體說開發(fā)者該怎么做,更沒有言明這項工作很簡單。微軟展示的,是一個前景。音樂應用 Deezer 開發(fā)者 Carl Anderson 說:
Windows 8 早就應該這么做了,而不是等到 Windows 10。兩年前,我們開發(fā)了這個應用,適配了 Surface 和桌面版,現(xiàn)在又來了,我們還有一系列的產(chǎn)品需要覆蓋,更多的工作等著我們,但是這值得我們去做。
大企業(yè)規(guī)劃和現(xiàn)實執(zhí)行之間總是有不少差異。不拿 OS X 和 iOS 來比較,就拿 iPhone 和 iPad 來說,做一個跨設備的應用并不是一個模子里批量制造月餅這么簡單。雖然都是 iOS 設備,但是許多開發(fā)者發(fā)現(xiàn),要想同時在兩個平臺都保持好的體驗的話,其實要花很多功夫。而在現(xiàn)實中,一個應用的 iPad 開發(fā)者和 iPhone 開發(fā)者往往屬于同一公司的不同團隊。
Gary Hoffman 管理了一群健康應用開發(fā)者,在他看來,iOS 的情況有指導意義:
iPhone 和 iPad 應用開發(fā)的情況是一個活生生的例子,那就是大企業(yè)的規(guī)劃愿景是一回事,現(xiàn)實又是一回事。在現(xiàn)實世界,我們的經(jīng)驗是,我們的 iPhone 團隊和 iPad 團隊是完全分開的。
或者說,其實微軟未必徹底搞明白了 UWAs 和 Continuum 的意義,就像尚在襁褓中的 Office 2016 一樣,在 Windows 10 上,Office 仍然有兩個版本,一個是桌面版,一個是用于平板和手機的版本。
歷史遺留問題并不少,Win32 環(huán)境下的桌面應用和 UWAs 有著根本性的不同,諸如 Office 這樣需要全平臺覆蓋的產(chǎn)品也就得老老實實地支持 Win32,而不是簡簡單單地開發(fā)一個 UWAs 應用就完了。并且,其實 Office 的 UWAs 版本也有比較靠譜的消息了。
微軟高管 David Treadwell 解釋說,要完成 Office 從 Win32 環(huán)境徹底轉成完全 UWAs 需要兩年甚至更久的時間來兼容。
所以由 Office 引發(fā)的這個問題其實就是目前許許多多的應用還是 Win32 應用,其中有些會開發(fā)成 UWAs,有些不然?,F(xiàn)在 Win32 的開發(fā)者面臨的問題是和當初 Windows 8 出現(xiàn)的時候類似,就是值不值得花這么大精力去適應新設備和新系統(tǒng)。
另外還有一個問題是,Continuum for PC 將適用于任何支持觸控功能的設備。Continuum for Phones 則是需要新的硬件支持。微軟高管在 Twitter 上明確說明了這一點,也就是說,現(xiàn)有設備能夠支持 Continuum 的可能性很小。在 Build 2015 上,演示 Continuum 的 Belfiore 也提到了:
融合了高通新的硬件,我們的新機就擁有了可以驅動兩塊不同顯示屏的處理器。這就是讓手機屏幕和電腦顯示屏分開獨立顯示的關鍵所在。
說起來,就是立新就得破舊,但破舊并不容易。
在 Build 大會上,微軟強調,所有的 UWAs 可以在 Windows Holographic 上工作,而 HoloLens 當晚演示的應用,都是 UWAs。
而顯然,外界對 HoloLens 的期望是最大的,畢竟增強現(xiàn)實和虛擬現(xiàn)實的前景被廣泛看好,微軟又是一個大玩家。所以 HoloLens 支持 UWAs 對于這項事業(yè)有著不小的推動作用。
有些開發(fā)者并不一定是微軟的開發(fā)者,但是進入到了增強現(xiàn)實,接觸了 HoloLens 之后,也被強行吸入了 UWAs 的圈子中去。不過還屬于 Demo 階段的 HoloLens 離大眾不知道還有多遠,離開發(fā)者也不知道有多遠。
Build 2015 上還有一個爆炸性的消息就是,微軟能讓 Android 和 iOS 應用很容易地在 Windows 10 上運行。將應用代碼進行重新的簡單編譯,再將應用上傳到應用商店即可。除此之外,微軟還推出了 Project Astoria 項目,它允許 Android 開發(fā)者直接提交 .apk 文件,然后將 Android 應用重新編譯成 Windows 通用應用程序等工作將由微軟負責完成。
這個聽起來也是很美好的計劃,不過冷靜下來的開發(fā)者也意識到了工作不會這么簡單,關于原生 Google 服務的取舍(現(xiàn)在做法是用微軟服務取代),關于兼容性和性能表現(xiàn)都都還有待時間的檢測。