Mozilla希望Web開發可以取代原生程式

2gua發表於2011-09-23

再次給予關注,方向越來越明晰,弄潮起潮落,看春去秋來。

[轉]

  Mozilla 正在構建 WebAPI,一組用於在瀏覽器中呼叫硬體裝置功能的程式介面。而之前,通常只有原生應用才能呼叫硬體功能。此舉意在開發一套跨平臺解決方案,讓開發人員只編寫一次程式碼,就可以在所有移動平臺上執行。

  Mozilla 釋出了 Boot to Gecko (B2G)專案,希望能夠建立一個類似於 Chrome OS 的 Web 作業系統,此作業系統的目標平臺除了上網本之外,還包括相容 Android 系統的手機和平板電腦。B2G 將會基於 Gecko 和 Android 技術,目的是擴充套件 Web 體驗以替代原生應用程式。Mozilla 的策略到底是自己構建作業系統,還是開發相關技術然後讓瀏覽器廠商來整合,目前尚不清楚。在 B2G 的 FAQ中寫到:

  Boot to Gecko(B2G) 目前處於初期探索階段,目標是為開放 Web 平臺構建獨立的、完整的作業系統。它不是一個產品,但一旦成功可以作為某些產品的基礎……

  B2G 專案不鼓勵只能執行在 B2G 或 Firefox 上的應用程式,這是區別於 B2G 和其他移動平臺的一個重要因素。我們並不希望由此獲得 Mozilla 的競爭優勢,而是希望整個 Web 平臺獲得優勢……

  理想情況下,這項技術將會被所有平臺和裝置上的移動瀏覽器所使用。我們期待著與其他作業系統和瀏覽器的開發人員一起,為制定標準和實現標準而努力。

  B2G 的開發將集中在四個領域:WebAPI,許可權模型 -保證 WebAPI 被網頁和應用安全的訪問 -,啟動 -Android 裝置啟動器,和應用程式 - 從其它平臺移植或新的應用。

  雖然有了 HTML5,但開發人員仍需要以統一的 API 訪問各種硬體功能 - USB、攝像頭、加速儀等-來獲得一致的開發體驗。針對手機的第一組 API 將在 3 到 6 個月之內完成。

  WebAPI 將會包含如下部分:

撥號:電話和簡訊 API,聯絡人 API 地址簿:聯絡人 API 簡訊:電話和簡訊 API,聯絡人 API 時間 攝像頭:攝像頭 API,檔案系統 API 相簿:基於 FileReader(已經完成)和 FileWriter 的檔案系統 API。還有基於 IndexedDB 的檔案抽象層。 計算器 設定:裝置狀態 API,設定 API 遊戲:加速儀 API,滑鼠 API 地圖:地理資訊 API,聯絡人 API

  當這些 API 被實現以後,開發人員就可以編寫出和原生應用非常相似的 Web 應用,而且不需要為每個移動平臺寫不同的程式碼。此專案若想取得成功,需要各大移動平臺廠商的支援。Mozilla 的 Robert Nyman 在官方部落格中稱“將會發布 WebAPI 規範的草稿和實現原型,並提交給 W3C 來標準化。”W3C 自己也在開發其中的一些 API,比如地理資訊 API,因此不清楚 Mozilla 會提出全新的 API 還是保持已有的、只為跨平臺開發所需要的 API。

  然後就等著蘋果、谷歌和微軟擁抱和支援這些 API 了。據 ArsTechnica稱,蘋果對 iOS 開發平臺的最初想法就是基於 HTML,而谷歌以推動 Web 標準化著稱,微軟也在為 Windows 8 打造基於 HTML 5 的使用者介面,其中還包含了在瀏覽器中訪問 PC 機硬體的 API,因此這些公司應該會支援這個想法。最後,就看 W3C 是基於 Mozilla 的 WebAPI 還是其他大廠商的提案來構建標準了。

相關文章