移動瀏覽器(Mobile Browser)與桌面瀏覽器的未來發展

       
         對於Google發展Android手機操作系統與Chrome瀏覽器操作系統的思考角度已經談過很多,對使用者來說,也許並不需要搞清楚Android與Chrome之間的差異,然而對於軟體開發人員以及設備製造商來說,這卻是有天壤之別的差異。Android系統一開始就被賦於手機設備上的應用,對於手機或者是像MID這樣小尺寸的手持設備,它會是一個很好的選擇,雖然它的核心是Linux,卻與過去熟知的Linux桌面系統沒甚麼關係。為什麼說它是適合於小尺寸的手持設備,或者適合於機上盒(Setup Box)或數位相框(Digital Frame)呢? 因為它雖然是一個上網設備的操作系統,但是在實際上網的體驗部分卻是依賴手機端的應用軟體,沒有人會期待在這樣一個小尺寸的屏幕上面上網瀏覽800x600或是1024x768的網頁,但是有很多服務器端的應用怎麼辦? 例如Gmail本身有Web瀏覽的服務,但是在手機上面,使用者還是習慣使用Email用戶端軟體來與連接服務器端的應用,正如同Facebook、Twitter在手機上也依賴用戶端軟體來連接服務。 畢竟讓手機上的瀏覽器去渲染(Render)800或1024寬度的網頁,所消耗的資源相對於晶片處理速度來說都是一大考驗,因此移動瀏覽器所默認支援的網頁語法通常也只適用於手機這樣的移動設備。對於Android這樣的開源系統,又是已經有出貨背書的保證下,Google卻始終不願承諾將Android移植適用於大尺寸的上網設備,特別是像上網本俗稱的小筆電上面。雖然後來的真相是原來Google計畫要推Chrome OS在大尺寸的上網設備上,但這只不過是最後的結果而沒有去分析原因。
         如果今天Google要讓Android能夠支援大尺寸屏幕的上網設備,他必須解決的問題就是Android瀏覽器無法做完整的上網體驗,因為即使Adobe Flash 10能在2010年Q1很平順的支援 Android,跟桌面的瀏覽器相比,他仍然落後許多,對於10吋以上屏幕的上網設備,如果瀏覽器性能無法實現大多數的服務器端的服務,例如GMail、GTalk、GDocs、Google Wave、Google Voice等等,那無異是一個失敗的產品,也因此截至目前,並沒有真正能夠支援10吋以上設備的Android產品在市面上出現。即使有品牌廠商推出雙操作系統(Dual OS)的行銷方式,也只能用Linux版本的Firefox來彌補Android瀏覽器的不足之處。Google當然很清楚沒有任何的手機系統能夠同時也適合運行在大尺寸的上網設備,即使是微軟的Windows Mobile,也只能說長的像Windows操作系統,而且對於瀏覽器的支援是完全不一樣的。Google既然自己開發了桌面的Chrome瀏覽器,為何不順便將他也適用於Android系統? 原因很簡單,這麼做的結果對Google來說並沒有任何好處,因為原本Android上的瀏覽器搭載Adobe Flash 10對手機用戶來說已經沒甚麼可以挑剔的了,而Chrome瀏覽器目前開發有Windows、Linux及MacOS版本,主要針對是桌上或大尺寸設備的操作系統開發的。Windows及MacOS各自名花有主,而Linux至少也行之有年,沒有必要為了Android再去開發一個版本的Chrome瀏覽器。更何況Android的架構並不是專門為瀏覽器設計的,如果要能夠支援桌上Chrome瀏覽器許多創新的做法以及符合速度與效能,可能是一件事倍功半的結果。
         很顯然的Google認為要讓使用者能夠有一個很完整的上網體驗需要的不是手機操作系統,也許有一天會有公司或團體願意努力讓桌面瀏覽器能夠跑在手機操作系統上。這個消息或許會讓想要使Android成為大尺寸上網設備的感到高興吧。然而Google對於桌面瀏覽器的研究開發與進展卻是十分的投入且迅速,相對於移動瀏覽器而言是完全不同的。換個角度想,如果今天手機操作系統上的瀏覽器能夠跟桌面瀏覽器的能力一樣,那麼何需要這些與服務器端連接的應用軟體? 既然上網的大部分行為在於透過瀏覽器去使用各種服務器端的應用,那麼為甚麼需要類似手機設備這樣的操作系統運行在較大尺寸的上網設備上? 對Google來說發展Chrome瀏覽器與Chrome操作系統是同一件事,從Chrome當初設計的想法與架構可以看出如果瀏覽器與操作系統是同一件事的時候,那麼現在所有服務器端的網路應用都將兼容於這樣的操作系統,正如同微軟所建立的PC世界,所有軟體兼容於Windows操作系統。跟PC不一樣的地方是用戶端的硬體設備將會非常的簡單,因為他並不需要考慮很多的用戶端應用軟體與資料儲存。這樣的想法使得Google在桌面Chrome瀏覽器上顯的大膽與創新,例如將Chrome瀏覽器化身為一個插件在低於兼容標準的微軟IE6中運行,這不禁讓微軟大為不滿,然而Google並不滿足於跟上目前主流瀏覽器的標準,更不滿意目前瀏覽器的運行速度,Google認為如今的Web應用軟體需要"向外擴展",因此需要從本地客戶端那裡多獲取一些處理器的能力來加速Web應用的速度以減輕服務器端的負擔以及網路速度的限制。例如在Javascript上,V8引擎的表現激發了其他競爭對手對Javascript的加速,Gears進一步加速Javascript並可以將Web應用的數據儲存於本地客戶端,而最能體現"向外擴展"精神的Native Client,允許Web應用透過瀏覽器來執行x86或ARM的二進制原始碼程式。
         Google的每一項技術都在一步步的改變桌面瀏覽器的未來發展,它使得瀏覽器的功能不僅僅只是在顯示Web內容於本地客戶端,它也積極參與Web應用系統的開發,使得與服務器之間能夠共享使用者介面,儲存(Storage)甚至於處理器的工作,最能體現這樣的想法就是Google Wave的表現。然而移動瀏覽器已經遠遠跟不上桌面瀏覽器的腳步,雖然手機操作系統隨著時間也越做越好,但是要讓桌上瀏覽器的體驗能夠實現在手機操作系統上,仍然是一個遙遠的目標。不論是HTML的渲染引擎或是Javascript的處理性能,它需要更好硬體性能的處理器及更高的時脈來達成,特別是像Flash這樣需要大量繪圖計算與記憶體搬動的硬體處理器來達到視頻瀏覽的順暢,這樣的挑戰的確是一場艱苦的戰役。可以預見的是未來Web應用開發上使用的本地客戶端技術越先進,桌面瀏覽器與移動瀏覽器的差距就會越大。與其花時間想辦法將桌面瀏覽器移植到手機操作系統,倒不如將桌面瀏覽器延伸到成為操作系統的一部分,如此一來不僅可以將桌面瀏覽器的功能發展的更為強大,也解決目前大尺寸的上網設備所需的瀏覽體驗。
         對於產品定位而言,如果想要訴求的賣點在於多媒體影音以及非完整上網體驗的產品(如機上盒Setup Box,電子書Ebook),那麼使用Android或現行的許多開源或半開源的手機操作系統是行得通的,然而如果想要訴求的在於完整的上網體驗,可能需要考慮以桌面瀏覽器為主的操作系統,但相對的,硬體等級也要有所不同,前者很適合使用現在ARM架構但處理時脈小於1GHz的硬體設備,而後者則適合使用x86及ARM架構但處理時脈大於1GHz的硬體設備,對於開發人員來說,不可避免的會有兩種開發模式,只要掌握不同的訴求,就能夠很清楚的明白軟體開發的方向,也就能夠在移動流覽器和桌面瀏覽器之間做出正確的選擇。
               

留言

這個網誌中的熱門文章

如何讓Chromebook/Chromebox可以使用自己build出來的Chromium OS或者第三方的Chromium OS?

自動使用Google Docs Viewer打開PDF、PPT及TIFF文件

Google Voice使用心得