WebAPIs ─ Firefox OS 存取硬體的必備核心

作者:
瀏覽:583

此為「Firefox OS ─ 讓 HTML5 得以完全發揮的平台」系列的第五支影片 (可於此回顧第一支第二支第三支第四支影片),說明應如何添增新的 APIs ─ 即所謂的 WebAPIs,讓 Firefox OS 進一步擴充 Web 的功能。

WebAPIs ─ Firefox OS 存取硬體的必備核心

本影片是由 Mozilla 的 Chris Heilmann (@codepo8),與 Telefónica Digital/ W3C 的 Daniel Appelquist (@torgo) 所錄製,為大家解說 Web 需要裝置 APIs 的理由、利用某些現有 APIs 的方法,進而讓 Firefox OS 提升 Web 的整體效益。可於此觀看影片

WebAPIs 的重要性在於:只要是以 Web 技術所建構的 Apps,均可透過 WebAPIs 存取硬體。而對完全以 HTML5 打造的 Firefox OS 來說,更需掌握行動電話的狀態、電池所剩的電力、網路連線的情況、螢幕旋轉的方向,還有更多功能。Mozilla 為此定義 JavaScript APIs 以存取硬體的不同部分,並努力使其成為大家都能使用的標準 APIs。

參閱 WebAPIs Wiki 頁面可進一步了解這些新的 APIs、取得所有 APIs 的最新列表、不同 Firefox 平台的 APIs 建構情形、相關標準化規範組織、APIs 錯誤的回報方式。你也可到 bugzilla 觀看 APIs Demo。我們曾以《Using WebAPIs to make the web layer more capable》一文詳細說明 WebAPIs,其中亦提供了多項 Demo 與資訊。

一般來說,所有 APIs 均依循一個簡單模式:開發者要求存取該 API,並定義 1 組成功/失敗的處理器 (Handler)。某些 APIs 可提供函式而取得多項屬性的細節,或提供 Boolean 值讓開發者使用。所以在存取 APIs 之前,亦可輕易了解該平台是否支援 APIs。

伺服器可能潛藏安全風險,所以無法將全部 APIs 開放給 Open Web 上的 Apps 取用。因此 APIs 分為「Regular」、「Privileged」、「Certified」共 3 大類。Regular APIs 可用於任何 Apps (開發者可置於自己的伺服器) 中,如 Battery API 或 Geolocation API 均屬此類。而 Privileged 與 Certified APIs 除了要求 Apps 遵守 Content Security Policy (CSP) 規範之外,其托管 (Hosted) 用的伺服器亦必須符合 Mozilla Marketplace 規定。如此可在存取硬體的同時,將濫用與惡意軟體的風險降至最低。

另可參閱 WebAPIs 文章列表獲得更多資訊。系列第六支影片將說明 WebActivities 的相關概念。

 

原文鏈結:https://hacks.mozilla.org/2013/08/webapis-firefox-os-for-developers-the-platform-html5-deserves/