Site icon Soul & Shell Blog

Android WebApp 開發教學 (1) - HTML5 WebView 行動應用

Introduction - HTML 5 的眼淚

說到使用 HTML5 來開發系統其實有好有壞,好處是跨平台且標準化(說實在的現在並不是那麼標準!?),壞處是目前的 Browser 對於 HTML5 的支援比較混亂,實作也比較不完整。此外相較於 Native 原生撰寫的 App,HTML 5 在執行速度上確實有改善的空間。但是跨平台這個優點確實吸引我們不可輕易放棄 HTML5,畢竟我相信硬體的效能限制突破的速度是常驚人的。

蘋果電腦執行長 Steve Jobs 也大力推崇 HTML5,然而 iOS 自家 Browser Safari 在 HTML5 可是下足了功夫,執行速度相較於其他 Browser 可是略勝一籌。以下是 Steve Jobs 表態支持 HTML5 的畫面:

接下來介紹如何在 Android 系統中開發 HTML5 應用程式。

Android WebApp Development Environment - WebApp 開發環境建置

今天我們要建立的開發環境使用 Eclipse 作為開發的 IDE (Integrated development environment),Eclipse 藉由安裝 ADT (Android Development Tools) Plugin 來整合 Android SDK 與 AVD (Android Virtual Device) 執行模擬環境。

Eclipse 是一的優秀的 IDE,底層採用 RCP (Rich Client Platform) 的架構來管理 Plugins,這樣設計使我們能夠輕易的在 IDE 中整合第三方開發工具。請跟著以下步驟來建立 Android HTML5 開發環境。

1. 下載 Android SDK 並且安裝,下載網址如下

2. 設定 Android SDK Manager,加入系統環境變數

3. Android SDK Manager 設定 (安裝API)

4. 建置 Eclispe 開發環境

5. 安裝 ADT Plugin for Eclipse(參考 ADT Plugin for Eclipse

6. 設定 Eclipse Android SDK

7. Eclipse 建立 Android 專案

8. 建立模擬器 Android Virtual Device (AVD)

9. 在 Eclipse 執行 Android Project

10. 建立 WebView 讀取網頁

11. Load Local HTML Files

使用 WebView 讀取遠端的網頁就像使用瀏覽器開啟網頁是一樣的,很顯然這對 App 的設計沒多太大的幫助。我們主要的開發情境還是透過開啟本機的 Html 網頁來實做應用程式,因此我們需要使用讀取本機網頁的技巧來實現。

成功在 WebView 中看見第一個自己設計的 Hello World for HTML,再來就是用你習慣的網頁開發方式來設計 App 囉,剩下就是你對 HTML5, CSS3, JavaScript 的功力如何發揮了。

Discussion - 討論

單純使用 WebView 來載入本機網頁,藉由 HTML5 API 來開發應用程式,這招雖然可以跨平台執行,但是由於都是使用網頁技巧來設計應用程式,實際上這樣的開發方式限制太多,只靠 HTML5 的技巧是不夠的。但我們可以藉由 JavaScript Bridge 來橋接 Native 函式,打破這些限制並且提升 WebView 的能力。目前也有成熟的框架可以使用,下次我們就來介紹 PhoneGap 這一套函式庫,讓我們快速地在 WebView 中發揮更高的應用能力。

此外在 User Interface ,上原本的網頁設計都是用滑鼠進行操作,相較於行動裝置的觸控面板,UI 在設計上更為重要。行動裝置要考慮的因素更多,包含畫面的大小與多點觸控的問題。在 WebView 徒手打造 UI 是很累人的,我們也可以利用現有的 Library 幫助我們開發應用程式,像是 jQuery Mobile 或者 Sencha Touch 這類的框架都能夠幫助我們更快速地開發系統。有機會再與各位介紹吧。

Reference - 參考資料

系列文章

Exit mobile version