《使用HTML,CSS和JavaScript開發Android程式(第2版)》是2013年9月出版的圖書,作者是【美】斯塔克(Stark,J.)、【美】傑普森(Jepson,B.)。
基本介紹
- 書名:使用HTML、CSS和JavaScript開發Android程式(第2版)
- 譯者:申林 鄒宇
- ISBN: 978-7-121-21212-3
- 出版時間:2013年9月出版
簡介,內容提要,精彩節摘,
簡介
【美】斯塔克(Stark,J.) 【美】傑普森(Jepson,B.)著
申林 鄒宇譯
ISBN 978-7-121-21212-3
2013年9月出版
定價:45.00元
180頁
16開
內容提要
本書主要介紹了如何使用現有的Web技術構建Android 應用程式。
本書的前3 章介紹了如何使用基本的HTML、CSS 和JavaScript 技術構建簡單的網路程式;第4章介紹了使用jQTouch 技術使得網路程式與原生程式的體驗相同;第5、6 兩章則講述了利用HTML5的客戶端存儲技術使網路程式實現本地存儲,進而成為一個離線套用;第7 章利用PhoneGap 項目使網路程式也可以操作Android 硬體特性;最後一章則為開發者描繪了在Android 應用程式市場上發布應用程式的流程和一些技巧。
本書最大的特點是深入淺出,每一部分都與實例結合,增強了可操作性,更通俗易懂。無論對於希望通過Web 技術構建移動套用的初學者,還是對於希望進入Android領域的Web 工程師,都是一本不錯的參考書。
目錄
前言 ..............................................................................xi
第1 章 入門指南............................................................ 1
1.1 網路應用程式對比原生應用程式....................................................................1
1.1.1 什麼是網路應用程式 .............................................................................1
1.1.2 什麼是原生應用程式.............................................................................1
1.1.3 優勢和劣勢............................................................................................2
1.1.4 哪種方法最適合你.................................................................................2
1.2 網路編程速成..................................................................................................3
1.2.1 HTML 入門 ...........................................................................................3
1.2.2 CSS 入門...............................................................................................6
1.2.3 JavaScript 入門......................................................................................9
第2 章 基本樣式.......................................................... 13
2.1 還沒網站.......................................................................................................13
2.2 第一步 ...........................................................................................................15
2.2.1 準備單獨的Android 樣式表 ................................................................18
2.2.2 控制頁面縮放......................................................................................20
2.3 添加Android CSS.........................................................................................22
2.4 添加Android 感觀效果.................................................................................25
2.5 使用jQuery 添加基本行為............................................................................28
2.6 內容回顧.......................................................................................................34
第3 章 高級樣式.......................................................... 35
3.1 添加一點Ajax...............................................................................................35
3.2 交通警察.......................................................................................................35
3.2.1 添加一些內容 ......................................................................................38
3.2.2 JavaScript 的路由請求.........................................................................39
3.3 簡單的點綴...................................................................................................40
3.3.1 進度指示器..........................................................................................40
3.3.2 設定頁面標題......................................................................................44
3.3.3 處理長標題..........................................................................................46
3.3.4 自動回到頂部......................................................................................47
3.3.5 只攔截本地連結..................................................................................49
3.3.6 編寫自己的返回按鈕...........................................................................49
3.4 在主螢幕上添加圖示....................................................................................56
3.5 內容回顧 .......................................................................................................57
第4 章 動畫................................................................ 59
4.1 來自朋友的幫助............................................................................................59
4.2 讓主頁滑動起來............................................................................................59
4.3 添加Dates 面板.............................................................................................62
4.4 添加Date 面板 ..............................................................................................67
4.5 添加New Entry 面板.....................................................................................68
4.6 添加Settings 面板 .........................................................................................71
4.7 將所有代碼放在一起....................................................................................75
4.8 自定義jQTouch.............................................................................................77
4.9 內容回顧.......................................................................................................79
第5 章 客戶端數據存儲............................................... 81
5.1 Web Storage ..................................................................................................81
5.1.1 將用戶設定保存到本地.......................................................................82
5.1.2 將選中的數據保存到Session Storage中.............................................86
5.2 Web SQL Database ........................................................................................90
5.2.1 創建資料庫..........................................................................................90
5.2.2 插入行.................................................................................................93
5.2.3 檢索行及處理結果集...........................................................................96
5.2.4 刪除行...............................................................................................101
5.3 Web Database 錯誤編碼參考....................................................................... 104
5.4 內容回顧.....................................................................................................105
第6 章 走向離線........................................................ 107
6.1 離線應用程式快取基礎...............................................................................107
6.2 線上Whitelist(白名單)和Fallback(備選)選項.................................. 111
6.3 創建動態Manifest 檔案..............................................................................118
6.4 調試.............................................................................................................122
6.4.1 JavaScript 控制台(JavaScript Console) ........................................... 123
6.5 內容回顧.....................................................................................................125
第7 章 走向原生........................................................ 127
7.1 PhoneGap 簡介............................................................................................127
7.2 使用Eclipse 和Android SDK 在本地構建應用程式................................... 128
7.2.1 下載並安裝Eclipse............................................................................128
7.2.2 下載並安裝Android SDK.................................................................. 129
7.2.3 在Eclipse 中安裝ADT 外掛程式............................................................. 129
7.2.4 添加Android 平台和其他組件 .......................................................... 130
7.2.5 安裝最新版的PhoneGap................................................................... 131
7.2.6 建立一個新的Android 項目 .............................................................. 131
7.2.7 以Android 套用方式運行Kilo .......................................................... 132
7.3 使用JavaScript 來控制手機........................................................................ 135
7.3.1 Beep(蜂鳴)、Vibrate(振動)及Alert(提醒).............................. 135
7.3.2 地理位置...........................................................................................139
7.3.3 加速度感測器....................................................................................146
7.4 內容回顧.....................................................................................................149
第8 章 將應用程式提交到Android 應用程式市場 ........ 151
8.1 準備程式的發行版本..................................................................................151
8.1.1 移除調試代碼....................................................................................151
8.1.2 應用程式版本管理.............................................................................152
8.1.3 編譯並簽名你的應用程式................................................................. 153
8.2 將程式上傳到Android 應用程式市場 ......................................................... 153
8.3 直接發布程式..............................................................................................155
8.4 延伸閱讀.....................................................................................................158
附錄A 通過WURFL 檢測瀏覽器 ................................ 161
A.1 安裝............................................................................................................161
A.2 配置............................................................................................................162
A.3 測試wurfl-php...........................................................................................163
精彩節摘
譯者序
毋庸置疑,我們已經邁入移動網際網路的時代。想想看,聊QQ、逛淘寶甚至是偷菜,以前必須打開計算機才能完成的事情,現在舉手可得。特別是iPhone 和Android 等智慧型手機的流行,更加推進了網際網路移動化的步伐。與此同時,個性化的套用也如雨後春筍般豐富起來。你不僅可以隨時隨地獲取新聞、利用碎片時間讀書或者進行娛樂社交,甚至可以隨時進行移動辦公和支付,個人信息終端在向移動設備轉移。
這個時代給開發者帶來了新的機會,同時帶來了不少挑戰。機會在於數量更多的用戶、更多樣化的需求和性能更好的移動設備,但這些同樣成為了他們的負擔:往往一個手機套用要適配不同的編程模型、不同的手機硬體和各式各樣的應用程式市場,大大增加了開發和推廣的成本。那有沒有一個靈活、通用而且支持大量應用程式的平台來應對這個挑戰呢?答案是肯定的:運用HTML、CSS 和JavaScript 這些Web 標準技術來構建移動應用程式。這本書就是在這樣的背景下誕生的。
這不是一本介紹程式語言和技巧的書籍,雖然書中大量涉及了HTML、CSS、JavaScript甚至是HTML5 的知識。它更多充當了“布道者”的角色,通過大量實例,傳達一種思維模式:如何利用熟悉的Web 技術,藉助新興框架的優勢,來解決移動領域的新問題。所以如果你之前就熟悉這些Web 技術,那將非常得心應手;不熟悉也沒關係,本書將介紹所用技術的基本概念,你將體驗到一個全新的世界。
本書為第2 版,內容分為8 章。前3 章介紹網路應用程式的基本概念和優勢,HTML、CSS 和JavaScript 的基本知識以及運用這些Web 標準技術構建簡單的、能在Android 瀏覽器中正常顯示的網路應用程式。這是本書的基礎,但不難理解,讀者可以更多關注其中的套用技巧。第4 章介紹jQTouch 這種工具,它是jQuery 的一個外掛程式,幫助實現更優雅的動畫,使得網路應用程式的感官體驗與本地應用程式相同。第5 ~ 7 章是本書的精華。第5 章介紹了如何使用HTML5 的客戶端數據存儲的特性來實現本地存儲,可能需要一些SQL 方面的基礎。第6 章利用了HTML5 的另外一個特性,使得網路應用程式在無法連線網路時,依然正常運行,這個離線特性非常實用,也是將網路應用程式原生化的基礎。第7 章介紹了PhoneGap——一個強大的框架,使得網路應用程式可以利用加速度感測器、位置感測器等硬體特性,與原生程式比肩,這是個非常令人興奮的章節。最後一章則介紹了如何將開發好的Android 應用程式發布到Android 應用程式市場上。已經有了相關經驗的讀者可以根據興趣閱讀。相比第1 版,本書淘汰了之前過時的框架,與時俱進地運用新的工具和方法,希望讀者可以“利其器”,更為高效地構建自己的Android 程式。
本書的前4 章由鄒宇翻譯,後4 章和第2 版的更新工作由我完成。在這當中,首先要特別感謝鄒宇在創業之中高質量地完成了翻譯工作,並且對其他部分進行了校審。感謝博文視點的各位編輯,沒有你們的指導和幫助,翻譯工作不可能有這么順利,也不可能有第2 版反覆認真的修改。感謝我的朋友鄭文濤和周婷婷在第1版上給出的指導性的意見。特別要感謝李晶,在第2 版修改時,也是我人生低谷時,對我的全心鼓勵和全力支持。謝謝你們。
申林
2013 年7 月
前言
要感謝行動電話的產生,讓我們從幾乎無人可以獲得信息步入了任何人都有機會獲得大量資源的網路時代。這大概是我們這代人最重要的成就了。然而儘管它是如此的重要,移動計算技術仍然處於發展初期。它在技術上、資金上和政策上已經形成了前所未有的平台分裂,這種狀態在問題解決之前將會變得更糟。
那些需要吸引大量不同群體用戶的開發者正面臨著一個看上去不可能的挑戰:“如何使用一個實用、價格合理,並且可支持大量套用的方式來實現我們的移動願望?”在很多情況下,答案是網路技術。而HTML5 和移動設備的優勢結合已經創造了這樣的環境,即使是一個開發新手都可以創建一些移動應用程式,在全球範圍內改善人們的生活。
Google 的Android 作業系統在移動計算領域內是一個引人注目的新生力量。在真正Google 的模式中,這是個開放、免費並且互操作強的平台,開發工具功能全面且強大,如果更技術一些的話,甚至可以運行在不同的平台上。
運營商和手機製造商已經順應潮流站到Android 陣營中。市場上已經大量地湧入了各種樣式和型號的Android 設備了。這對開發者來說是一把雙刃劍。一方面,更多的設備意味著一個更大的市場,而另一方面,更多的設備也意味著更多的平台分裂。和一般手機市場上的分裂一樣,Android 的分裂問題往往可以通過採用HTML、CSS 和JavaScript生成應用程式的方法來解決。
我首先要承認不是所有的套用都適合用網路技術開發,即很多應用程式用原生代碼寫起來比HTML 更簡單。倘若說到開發者不確定用哪種方法去實現時,我建議:
如果可以用HTML、CSS 和JavaScript 來構建應用程式,也許就應該用它們。
使用開源、基於標準的網路技術為開發者帶來了最大的自由度、最廣泛的套用範圍和最低廉的費用。你可以很容易地將一個程式作為網路應用程式發布,然後在成千上萬的真實用戶負載下修改和測試。一旦你準備改變,可以用PhoneGap 將網路套用轉換成原生的Android套用,根據你的喜好加上一些設備專有的特徵,並且提交到Android 應用程式市場,或者在網站上提供下載。聽起來不錯,對吧。
本書的讀者
我假設本書的讀者已經有了一定的HTML、CSS、JavaScript(特別是jQuery) 讀寫基礎。第5 章中包含了一些基本的SQL 程式,所以對SQL 語法的了解會有助於理解內容,但這不是必要的。