PhoneGap開發(fā)指南

出版時間:2012-10  出版社:人民郵電出版社  作者:魯尼  頁數(shù):282  字數(shù):369000  譯者:劉明駿  
Tag標簽:無  

內(nèi)容概要

  PhoneGap是一個開源的開發(fā)工具和框架,可以允許開發(fā)人員使用HTML、JavaScript和 CSS
技術(shù)開發(fā)出強大的跨平臺移動應(yīng)用程序。《PhoneGap開發(fā)指南》通過結(jié)合大量實際案例和源代碼對PhoneGap的重要特性進行了詳細講解,內(nèi)容全面豐富,易于理解?! ∪珪卜譃?br />11 章,其內(nèi)容包括如何在不同平臺上安裝
PhoneGap,如何在不同平臺上構(gòu)建以及調(diào)試應(yīng)用程序,如何將移動Web轉(zhuǎn)換為移動應(yīng)用程序,如何管理跨平臺代碼庫等。此外,《PhoneGap開發(fā)指南》還介紹了HTML5
API和移動JavaScript庫,介紹了CSS3的轉(zhuǎn)場、變形和動畫,如何使用PhoneGap訪問設(shè)備感應(yīng)器,如何通過PhoneGap使用攝像頭,如何使用PhoneGap讀寫通訊錄,如何使用不同平臺的原生API編寫PhoneGap插件,如何同步應(yīng)用程序,并緩存一些必要的信息等內(nèi)容?!  禤honeGap開發(fā)指南》適合具有一定HTML和JavaScript基礎(chǔ),而且對PhoneGap這一開源框架感興趣的Web開發(fā)人員、移動應(yīng)用開發(fā)人員閱讀。

作者簡介

  Andrew Lunny是Nitobi軟件公司的一名號稱“頭號牛人(Chief
N00b)”的軟件開發(fā)人員,該軟件公司總部設(shè)在溫哥華。Andrew曾是一名優(yōu)秀的沖浪運動員,不幸的是,一只兇狠的鯊魚扼殺了他這份富有前途的職業(yè)。自退出沖浪運動算起,他已經(jīng)在Nitobi公司工作了整整4年。作為PhoneGap組的一名成員,他是該組的核心開發(fā)人員,尤其在用PhoneGap建立Web服務(wù)方面,他是個名副其實的多面手,并在PhoneGap及相關(guān)技術(shù)領(lǐng)域具有至少10年的開發(fā)經(jīng)驗。他喜愛Ruby、JavaScript、UNIX、Git以及Internet。
Nitobi公司的經(jīng)營者包括Andre Charland、Dave Johnson還有Brian
Leroux。他們擅長于跨平臺移動設(shè)備的開發(fā)與設(shè)計,同時也是PhoneGap開源項目的贊助者。在業(yè)余時間,Andrew熱衷于騎自行車、跑步、散步還有跳躍。更讓人驚訝的是,他還在英國哥倫比亞大學獲得了兩個截然不同的學位!

書籍目錄

第1章 安裝PhoneGap 
1.1 操作系統(tǒng) 
1.2 所需工具 
1.3 使用iOS入門 
1.4 行動時刻——在模擬器上運行應(yīng)用程序 
1.5 安裝PhoneGap-iPhone 
1.6 行動時刻——PhoneGap-iPhone的Hello World 
1.6.1 剛做了什么? 
1.6.2 突擊測驗——iPhone上的PhoneGap基礎(chǔ) 
1.7 使用Android入門 
  開發(fā)環(huán)境的說明 
1.8 行動時刻——運行SDK 
1.8.1 剛做了什么? 
1.8.2 PhoneGap Android 
1.9 行動時刻——PhoneGap Android的Hello World 
1.9.1 剛做了什么? 
1.9.2 PhoneGap Android應(yīng)用程序中到底有什么? 
1.9.3 一展身手——深入Android 
1.10 使用BlackBerry Web Works入門 
1.11 行動時刻——第一個PhoneGap BlackBerry應(yīng)用 
1.11.1 剛做了什么? 
1.11.2 BlackBerry代碼簽名 
1.11.3 一展身手——跨平臺帶來的樂趣 
1.12 小結(jié) 
第2章 在不同平臺上構(gòu)建和調(diào)試應(yīng)用程序 
2.1 使用桌面瀏覽器進行設(shè)計 
2.1.1 WebKit 
2.2 開發(fā)第一個應(yīng)用程序:You Are The Best 
2.3 行動時刻——初期的設(shè)計和功能 
2.3.1 剛做了什么? 
2.3.2 我們的工作流程 
2.3.3 我們的樣式 
1.分離性 
2.寬度和高度 
3.-webkit-border-radius 
2.3.4 我們的腳本 
1.分離性 
2.a(chǎn)ddEventListener 
3.DOMContentLoaded 
2.3.5 突擊測驗——初期設(shè)計 
2.4 使用Web Inspector 
  進入Web Inspector 
2.5 行動時刻——簡單的日志和錯誤檢查 
2.5.1 剛做了什么? 
2.5.2 一展身手——玩轉(zhuǎn)Web Inspector和JavaScript 
2.6 移植到原生平臺 
2.7 行動時刻——You Are The Best for iPhone 
2.7.1 剛做了什么? 
2.7.2  
2.7.3 phonegap.js 
2.7.4 deviceready事件 
2.7.5 一展身手——移植到其他平臺 
2.8 總結(jié) 
第3章 從移動站點到移動應(yīng)用 
3.1 實現(xiàn)Web服務(wù)器的角色 
3.2 行動時刻——實現(xiàn)LocalStorage 
3.2.1 剛做了什么? 
3.2.2 其他存儲方案 
1.Web SQL 
2.Indexed DB 
3.2.3 一展身手——探索LocalStorage 
3.3 視圖模板化技術(shù) 
3.4 行動時刻——食物詳情視圖 
3.4.1 剛做了什么? 
3.4.2 突擊測驗——使用Mustache模板 
3.4.3 訪問遠程資源 
  跨域策略 
3.5 行動時刻——食物點評 
3.5.1 剛做了什么? 
3.5.2 訪問遠程資源 
1.解析遠程數(shù)據(jù) 
2.事件委托 
3.Sleight:PhoneGap的開發(fā)服務(wù)器 
3.5.3 一展身手——讓效率更高一些 
3.6 總結(jié) 
第4章 管理跨平臺代碼庫 
4.1 平臺之間的內(nèi)在差別 
  使用單一代碼庫 
4.2 行動時刻——檢測和回退 
4.2.1 剛做了什么? 
4.2.2 用戶終端嗅探 
4.2.3 特性檢測 
4.2.4 突擊測驗——特性檢測VS用戶終端(UA)嗅探 
4.2.5 媒體查詢 
4.2.6 一展身手 
4.2.7 預(yù)處理代碼 
4.3 總結(jié) 
第5章 HTML5 API和移動JavaScript 
5.1 移動JavaScript 
  XUI 
5.2 行動時刻——下載、構(gòu)建以及使用XUI 
5.2.1 剛做了什么? 
5.2.2 為什么不用jQuery? 
5.2.3 突擊測驗——XUI 
5.3 HTML5 
  媒體元素 
5.4 行動時刻——使用PhoneGap 
5.4.1 剛做了什么? 
5.4.2 媒體事件和屬性 
5.4.3 audio元素 
5.4.4 突擊測驗——媒體元素 
5.4.5 canvas元素 
5.5 行動時刻——晚餐示數(shù)面板 
5.5.1 剛做了什么? 
5.5.2 canvas API 
5.5.3 注意性能 
5.5.4 一展身手 
5.5.5 HTML5中還有什么? 
5.6 總結(jié) 
第6章 CSS3:轉(zhuǎn)場、變形和動畫 
6.1 使用CSS3 Transition進行轉(zhuǎn)換 
6.2 行動時刻——模態(tài)顯示tweet視圖 
6.2.1 剛做了什么? 
6.2.2 時間函數(shù) 
6.2.3 CSS3 Transform中其他的函數(shù) 
6.2.4 一展身手——CSS3 Transform 
6.3 滾動 
6.3.1 viewport:可見與不可見 
6.3.2 iScroll 
6.4 行動時刻——滾動食物列表 
6.4.1 剛做了什么? 
6.4.2 其他解決方法 
6.4.3 突擊測驗——滾動 
6.5 顯式動畫 
6.6 行動時刻——讓我們的標題動起來 
6.6.1 剛做了什么? 
6.6.2 一展身手 
6.6.3 動畫:用CSS3還是HTML5 
6.7 總結(jié) 
第7章 使用PhoneGap調(diào)用設(shè)備傳感器 
7.1 什么是設(shè)備傳感器? 
7.2 行動時刻——明信片生成器 
7.2.1 剛做了什么? 
7.2.2 PhoneGap與HTML5的對比 
7.2.3 其他地理位置數(shù)據(jù) 
7.2.4 突擊測驗——地理位置 
7.3 加速度計數(shù)據(jù) 
7.4 行動時刻——監(jiān)測搖擺 
7.4.1 剛做了什么? 
7.4.2 設(shè)備朝向和設(shè)備運動事件 
7.4.3 一展身手 
7.5 方向媒體查詢 
7.6 行動時刻——橫向顯示明信片應(yīng)用程序 
7.6.1 剛做了什么? 
7.6.2 其他媒體查詢 
突擊測驗——朝向和媒體查詢 
7.6.3 磁力計傳感器:漏掉的API 
7.7 總結(jié) 
第8章 訪問攝像頭數(shù)據(jù)和文件 
8.1 行動時刻——攝像頭API入門 
8.1.1 剛做了什么? 
8.1.2 瀏覽器既不是模擬器也不是設(shè)備 
8.1.3 圖片源 
8.1.4 其他選項 
8.1.5 突擊測驗——navigator.camera.getPicture 
8.2 當我們獲得圖片后,能做些什么? 
8.3 行動時刻——使用圖片路徑顯示圖片 
8.3.1 剛做了什么? 
8.3.2 那么,圖片在哪里? 
8.3.3 一展身手 
8.3.4 原始圖片數(shù)據(jù) 
8.4 行動時刻——保存照片 
8.4.1 剛做了什么? 
8.4.2 確保已設(shè)置quality選項 
8.4.3 突擊測驗——destinationType 
8.4.4 修改或訪問實時數(shù)據(jù) 
8.5 總結(jié) 
第9章 讀寫通訊錄 
9.1 行動時刻——navigator.service.contacts.find 
9.1.1 剛做了什么? 
9.1.2 ContactField類型的字段 
9.1.3 一展身手 
9.1.4 寫入聯(lián)系人數(shù)據(jù) 
9.2 行動時刻——交個朋友 
9.2.1 剛做了什么? 
9.2.2 如果遇到新的問題,我該怎么辦? 
9.2.3 ContactField、ContactName以及類似的對象 
9.2.4 負起責任 
9.2.5 突擊測驗——通訊錄 
9.3 總結(jié) 
第10章 PhoneGap插件 
10.1 獲取PhoneGap插件 
10.2 行動時刻——集成ChildBrowser插件 
10.2.1 剛做了什么? 
10.2.2 平臺間的差異 
10.2.3 漫游PhoneGap插件 
10.2.4 突擊測驗——使用PhoneGap插件 
10.2.5 編寫PhoneGap插件 
10.3 行動時刻——電量視圖 
10.3.1 剛做了什么? 
10.3.2 iOS版PhoneGap插件值得注意的地方 
10.3.3 一展身手 
10.4 移植插件 
10.5 行動時刻——Android和BlackBerry 
10.5.1 剛做了什么? 
10.5.2 你需要跨平臺插件嗎? 
10.5.3 不受限制 
10.5.4 突擊測驗——編寫PhoneGap插件 
10.6 總結(jié) 
第11章 離線運行:同步和緩存 
11.1 Ruby和Sinatra 
11.2 行動時刻——一個擁有API的新聞?wù)尽?br />11.2.1 剛做了什么? 
11.2.2 Sinatra的替代者 
11.2.3 突擊測驗——一個簡單的Web服務(wù) 
11.2.4 緩存新聞報道 
11.3 行動時刻——在本地數(shù)據(jù)庫緩存新聞 
11.3.1 剛做了什么? 
11.3.2 管理應(yīng)用程序初始化 
11.3.3 一展身手 
11.4 總結(jié) 
附錄A 部署到iOS 
A.1 行動時刻——部署到設(shè)備上 
A.1.1 剛做了什么? 
A.1.2 一展身手——iOS基礎(chǔ)知識 
附錄B 突擊測驗答案 

章節(jié)摘錄

版權(quán)頁:   插圖:   9.2.1剛做了什么? 在我們繞來繞去地做了許多很業(yè)余的事情之后,我們終于成功編寫了一個跨平臺的應(yīng)用程序,該應(yīng)用程序可以根據(jù)用戶輸入,在系統(tǒng)通訊錄中新建聯(lián)系人。 我一直告訴自己使用Contacts API是很直觀的,但我是真心討厭Contacts API。因為明明是一個很簡單的概念但用起來卻要大費周章。雖然我們可以向contact.save中傳入回調(diào)函數(shù),但卻沒有簡單的方法可以用來驗證要傳入設(shè)備的聯(lián)系人對象;除了在獨立設(shè)備上手動測試,也沒有簡單的方法可以讓你清楚地知道用戶會看到什么。很遺憾,這就是Contacts API的本質(zhì)。因為“管理聯(lián)系人”是現(xiàn)代智能手機的內(nèi)在組成部分,所以每個Contacts API的實現(xiàn)千差萬別也就不奇怪了。 9.2.2如果遇到新的問題,我該怎么辦? Contacts API總是有這樣那樣的問題(老實說,它從來沒有按我想的做過),所以你很有可能會遇到本章沒有涉及的新問題。 PhoneGap郵件列表(架設(shè)在Google Groups上,你很容易找到)和PhoneGap文檔網(wǎng)站是兩個最好的資源。PhoneGap文檔網(wǎng)站提供了最完善的API列表,哪些API函數(shù)需要哪些參數(shù),什么參數(shù)會傳入你的回調(diào)函數(shù)。對于Contacts API來說,因為有非常大量的細節(jié)工作要做,所以PhoneGap文檔網(wǎng)站是非常寶貴的資源。 擁有數(shù)千名PhoneGap開發(fā)人員的郵件列表也十分有用。當你遇到特定設(shè)備的問題時,郵件列表會特別有用。就比如我前面提到過的一個Android的問題(在向設(shè)備新增聯(lián)系的地方):如果我不修改我的通訊錄設(shè)置,那么我是無法正常運行應(yīng)用程序的。修改通訊錄設(shè)置的方法在郵件列表中有詳細說明。如果你有問題也可以通過郵件列表解決。 3.2.3ContactField、ContactName以及類似的對象 在上面的所有例子中,我使用了PhoneGap的JavaScript的構(gòu)造器來創(chuàng)建聯(lián)系人對象(new Contact和new ContactField,等等)。雖然這點在靜態(tài)類型語言(比如Java)中非常常見,但許多JavaScript程序員更熟悉那些松散的、本質(zhì)上是動態(tài)的方法。 因為你的PhoneGap代碼就只是JavaScript,所以你可以使用JavaScript語言的特點:創(chuàng)建輕量級的散列而不是使用new操作符,把可選的參數(shù)移出調(diào)用的函數(shù),同時使用匿名內(nèi)聯(lián)函數(shù)作為回調(diào)函數(shù)。對于Contacts API來說,使用這些構(gòu)造器的最主要好處就是這些構(gòu)造器會事先(使用null值)生成出所有原生代碼需要的字段。如果你不這么做,就會引起意料之外的問題。 大多數(shù)情況下,使用PhoneGap框架提供的工具是最安全的方法。如果你不喜歡深挖PhoneGap的源代碼,那么更應(yīng)該使用這個方法。 9.2.4負起責任 PhoneGap提供了隨意讀取和寫入用戶通訊錄的權(quán)限,同時你也可以很容易地濫用這些權(quán)限。如果你希望為你的公司或客戶創(chuàng)建一個有價值的應(yīng)用程序,那么你就一定得要謹慎對待你使用到的任何用戶數(shù)據(jù)。 特別要注意的是:如果沒有用戶的許可,不要保存任何用戶數(shù)據(jù)或?qū)⑦@些數(shù)據(jù)發(fā)回遠程服務(wù)器;不要與用戶通訊錄中的任何聯(lián)系人聯(lián)系,除非是用戶讓你這么做的;不隨意向通訊錄中添加新聯(lián)系人。如果你想讓你的應(yīng)用程序被App Stores或App Markets下線,那么違反上面列出的這幾條倒是不錯的方法,這樣你也就能保證徹底沒有人會使用這款應(yīng)用 程序了。

媒體關(guān)注與評論

通過任務(wù)和挑戰(zhàn)來鼓勵讀者親身實踐。

編輯推薦

《PhoneGap開發(fā)指南》是Adobe中國開發(fā)者技術(shù)社區(qū)傾力推薦的一本PhoneGap開發(fā)指南《PhoneGap開發(fā)指南》將演示如何使用單一的代碼庫,借助PhoneGap移動開發(fā)框架,來為多個移動平臺(比如iOS、Android、BlackBerry等)開發(fā)應(yīng)用程序。邊學邊練,學以致用,所有示例來自真實環(huán)境,為用戶提供創(chuàng)意,激發(fā)靈感通過任務(wù)和挑戰(zhàn)來鼓勵讀者親身實踐

圖書封面

圖書標簽Tags

評論、評分、閱讀與下載


    PhoneGap開發(fā)指南 PDF格式下載


用戶評論 (總計32條)

 
 

  •   少有的PhoneGap開發(fā)書籍,為PhoneGap開發(fā)公司Nitobi牛人所寫。條理清晰,對入門很有用!
  •   PhoneGap既支持iOS,也支持Android。
  •   很喜歡的書,介紹的很詳細,很適合學習PhoneGap
  •   跨平臺開發(fā)的好工具,不需要了解java,c就可以開發(fā)移動應(yīng)用程序
  •   一本很好的跨平臺開發(fā)入門指導書,雖然不是原生態(tài)技術(shù),但思路很不錯。
  •   當時沒有仔細看不是android版的 是針對ios的介紹的,不過還行吧 都是寫入門級的
  •   書的質(zhì)量不錯,內(nèi)容充實,基礎(chǔ)入門類的書
  •   老公一看到書,說,沒錯,就是這本?,F(xiàn)在已經(jīng)看去了。
  •   一直在當當買書,下次再來。
  •   看了下目錄,作為入門,應(yīng)該還可以吧。
  •   非常不錯,入門好書。
  •   很好,正需要呢
  •   又見識了新東西,思想不錯向手機過渡
  •   給別人買的。呵呵
  •   很好的學習資料,以后學習就靠它了!
  •   書中的開發(fā)環(huán)境配置問題不符合天朝、而且也比較的老舊了。同時沒有寫關(guān)于jquery mobile的內(nèi)容,讓人覺的很遺憾
  •   一步一步的介紹大家做應(yīng)用,但是在前期的搭建環(huán)境知識有點舊,新手推薦,沒有很深入介紹pg
  •   感覺這本書還不錯,適合基礎(chǔ)入門用
  •   送貨快,書很薄,字體大,內(nèi)容少
  •   一般湊合看就行了。
  •   phonegap不怎么樣。
  •   雖然是新書,但片面了點。Ios部分偏多,估計作者是Ios開發(fā)出生的。
  •   一般,雖然還沒看完
  •   版本是1.0,太舊了。
  •   值得一看,但是你知道的,國產(chǎn)書,字大,內(nèi)容少.
  •   作為指南,很多新手會踩的坑沒有列出。PhoneGap 更新很快,這本已經(jīng)顯舊了。
  •   書中介紹的版本比較老,不過基本功能都差不多,沒看完,最近太忙
  •   知識網(wǎng)上都有的,懶得自己整理的還是買本吧
  •   雖然不太喜歡一開始就給一本書一個負面意見,但是編程類的圖書 真的真的真的初學的時候不適合看老外寫的書,理解不了他的邏輯,況且他都是在蘋果電腦上的編程,android的eclipse代碼也是在蘋果上編程,看起來距離感非常遠。唯一優(yōu)點可能是目錄結(jié)構(gòu)安排的可以。
  •   寫得實在是太淺了,當入門書都顯得淺了
  •   關(guān)于android比較少,iphone的比較多
  •   覆蓋面廣,淺顯易懂??匆幌禄旧蠈φ麄€web的各個部分都有了解了
 

250萬本中文圖書簡介、評論、評分,PDF格式免費下載。 第一圖書網(wǎng) 手機版

京ICP備13047387號-7