出版時間:2009-11 出版社:人民郵電 作者:王世江 頁數(shù):281
Tag標簽:無
前言
本書的第一版出版后,出乎意料地引爆了學習Android平臺的熱潮,熱賣程度超出預期。本書能這么快得到寶貴的改版機會,也要感謝Android平臺快得出奇的發(fā)展。在本書第一版出版時,市面上還只有一款尚未發(fā)售的G1,而幾個月后的今天,Magic手機已經(jīng)發(fā)售,而且據(jù)統(tǒng)計在今年內(nèi)全球總共將要發(fā)布20款Android新手機。本次的改版中,除了配合最新版本開發(fā)工具的操作方式來改寫本書外,同時也修改了諸多范例程序代碼的配置、加入更多的小技巧與說明,修改了第一版謬誤之處,并額外增加了幾章新內(nèi)容,期望讀者能更順暢地通過本書,學習Android平臺所需的入門知識。Android目前的發(fā)布周期相當快,2008年11月發(fā)布1.0版,2009年2月發(fā)布1.1版,2009年5月發(fā)布1.5版,順著這個時程推測,接下來可能每三個月都有一個新版出來。以Google過去其他產(chǎn)品的改版記錄而言,Android算是其中改版速度最快的產(chǎn)品之一。一般以年為單位的書籍出版周期也將難以趕上改版速度。在年初剛出版支持1.1版的書籍,年尾書中許多內(nèi)容卻過時了。除了手機之外,Android系統(tǒng)也將應用于嵌入式與手持設備。在這急速演進的過程中,各種高級的功能、API都有很大的可能被修改,或是為了設備的需求而在功能上有所增減。例如在大部分的嵌入式設備中,手機相關功能就用不到了。如何能協(xié)助讀者最高效地學習Android平臺,一直是筆者在寫作時追求的目標?!吧鼞摾速M在美好的事物上”。在這個信息爆炸的年代,人的學習時間有限,而Android平臺的各種高級功能卻不停地增加著。這種情況下,應該把邊苦讀各種API范例教學邊發(fā)呆的時間盡可能省下來,用這些省下來的時間去苦練基本功或?qū)嶋H編寫應用程序,是更有效率的學習方式。筆者認為要駕馭這個不斷發(fā)展的平臺,只需踏實學好本書中所教的實用基礎知識。在需要特定功能時,Google的“搜索”功能也這么方便,通過官方http://developer.and.roid.com網(wǎng)站查找所要的功能,然后應用到程序中即可。若能實際通過Google Code網(wǎng)站http://code。google.com/hosting/,下載世界各地開發(fā)者發(fā)布的項目原始代碼,參照或應用在自己的程序中,學習效果會更佳。
內(nèi)容概要
本書是一本快速入門指南,旨在幫助讀者迅速由入門晉級到實際應用,學會Android平臺的應用程序設計?! ”緯卜?個主題41章,每章皆以實例為主軸,介紹在實際編寫應用程序時將經(jīng)常使用到的功能,并配合相關的概念講解。內(nèi)容包括Android開發(fā)工具的安裝與使用、Android應用程序界面編寫、通過重構讓應用程序更容易擴展與維護、以用戶為導向設計手機應用程序、發(fā)布應用程序、SQLite數(shù)據(jù)庫應用、地圖與定位功能等。隨書光盤中包括了所有范例的程序代碼?! ”緯v述由淺入深,由Android的基礎知識到實際開發(fā)應用,結(jié)構清晰、語言簡潔,非常適合Android的初學者以及還不熟悉Java語言和J2ME開發(fā)經(jīng)驗的程序開發(fā)人員閱讀參考。
書籍目錄
第1篇 入門篇 第1章 初探Android 1.1 Android是什么 1.2 Android簡史 1.3 從創(chuàng)意開始 1.4 參考資料 第2章 安裝Android開發(fā)工具 2.1 系統(tǒng)需求 2.1.1 操作系統(tǒng) 2.1.2 必要開發(fā)工具 2.1.3 其他開發(fā)環(huán)境工具(非必要安裝) 2.2 安裝流程 2.3 參考資料 第3章 打開現(xiàn)有項目 3.1 打開項目 3.2 刪除項目 3.3 導入項目 3.4 修復項目 3.5 修改對應的目標版本 3.6 參考資料 第4章 操作Android模擬器(Emulator) 4.1 設置環(huán)境參數(shù) 4.2 設置Android模擬器 4.3 使用命令行工具管理模擬器 4.3.1 列出模擬器類型 4.3.2 創(chuàng)建模擬器 4.3.3 列出已創(chuàng)建的模擬器 4.4 使用運行(Run)模式運行 4.5 操作Android模擬器 4.5.1 切換模擬器布局 4.5.2 切換屏幕 4.5.3 添加模擬器外觀設置 4.5.4 刪除模擬器外觀設置 4.5.5 移除程序 4.5.6 移除模擬器 4.6 參考資料 第5章 創(chuàng)建一個Android應用程序 5.1 創(chuàng)建新項目 5.2 程序項目架構 5.2.1 src/:源代碼(source)目錄 5.2.2 gen/:自動生成(Generate)目錄 5.2.3 res/:資源(Resource)目錄 5.2.4 Android功能列表 5.2.5 “Android版本號/”參考函數(shù)目錄 5.3 參考資料 第2篇 基礎篇 第6章 描述用戶界面 6.1 身高體重指數(shù)(BMI)計算 6.2 表達用戶界面 6.3 參考資源 第7章 設計用戶界面 7.1 視圖(View) 7.2 查閱文件 7.2.1 線上文件 7.2.2 脫機文件 7.3 開始設計 7.4 整合 7.5 指定輸入類型(InputType) 7.6 視覺化的界面開發(fā)工具 7.7 參考資料 第8章 訪問標識符號 8.1 android:id屬性 8.2 XML說明文件與R.java資源文件 8.3 將字符串抽離XML 8.4 新增XML文件 8.5 參考資料 第9章 解讀程序流程 9.1 基礎程序邏輯結(jié)構 9.2 參考函數(shù)庫 9.3 參考資料 第10章 完成BMI程序 10.1 完整的程序 10.2 程序解讀 第3篇 提高篇 第11章 重構程序 11.1 什么是重構 11.2 重新查看BMI應用程序 11.3 MVC模式 11.4 重構BMI應用程序 11.5 完整的Bmi.java程序 代碼 11.6 參考資料 第12章 添加對話框(Dialog) 12.1 設計對話框 12.2 定義調(diào)用點 12.3 實體對話框 12.4 重構 12.5 添加按鈕 12.6 Toast界面組件 12.7 錯誤處理 12.7.1 講解 12.7.2 提取字符串 12.8 參考資料 第13章 查看線上內(nèi)容(Uri) 13.1 打開網(wǎng)頁 13.1.1 講解 13.1.2 使用Uri查看Google地圖 13.2 再做好一點(重構) 13.2.1 提取字符串 13.2.2 避免出錯 13.3 參考資料 第14章 添加菜單(Menu) 14.1 菜單功能 14.2 創(chuàng)建菜單 14.2.1 裝飾選項 14.2.2 使用內(nèi)置的菜單圖標 14.3 處理選項動作 14.4 參考資料 第15章 定義Android列表(Manifest) 15.1 Android框架 15.2 預設的Activity列表 15.3 參考資料 第16章 添加新活動(Activity) 16.1 Activity的分類 16.2 獨立的Activity 16.3 程序中創(chuàng)建新的Activity類文件 16.4 在列表中添加Activity代碼 16.5 手動添加Activity標簽 16.6 修改頁面標題文字 16.7 原Activity類中添加startActivity函數(shù) 第17章 傳送數(shù)據(jù)到新意圖(Intent) 17.1 使用Intent傳遞數(shù)據(jù) 17.2 使用Intent接收信息 17.2.1 相關工作 17.2.2 在Activity中解開信息 17.2.3 講解 17.3 不通過Bundle交換信息 第18章 信息提醒(Notification) 18.1 狀態(tài)欄提醒 18.2 使用狀態(tài)欄(Notification Bar)傳遞信息 18.3 使用內(nèi)置的狀態(tài)圖標 18.4 參考資料 第19章 日志與調(diào)試(Log) 19.1 在程序中加上調(diào)試信息 19.2 導入Log函數(shù) 19.3 實際應用 19.3.1 講解 19.3.2 其他的記錄標記方式 19.3.3 延伸使用 19.4 在調(diào)試環(huán)境中查看除錯信息 19.4.1 啟動模擬器 19.4.2 切換到查錯環(huán)境配置 19.4.3 添加信息日志過濾器(Log Filter) 19.5 模擬器上的調(diào)試設置 19.6 管理日志 19.7 在實機上調(diào)試 19.8 參考資料 第20章 活動的生命周期LifeCycle 20.1 生命周期 20.2 進程 20.3 為什么要了解生命周期? 20.4 Activity的狀態(tài) 20.4.1 Active(活動) 20.4.2 Paused(暫停) 20.4.3 Stopped(停止) 20.4.4 Dead(已回收或未啟動) 20.5 系統(tǒng)內(nèi)存不足時的行為 20.6 觀察Activity運行流程 20.7 Activity運行流程 20.7.1 一般啟動 20.7.2 調(diào)用另一個Activity 20.7.3 返回原Activity 20.7.4 退出結(jié)束 20.7.5 回收后再啟動 20.8 參考資料 第21章 優(yōu)先級(Preference) 21.1 使用優(yōu)先級設置 21.2 保存優(yōu)先級設置 21.3 參考資料 第22章 開發(fā)不息 22.1 回顧BMI應用程序 22.2 BMI應用程序設計的缺陷 22.3 展望未來 第4篇 融會貫通篇 第23章 顯性設計 23.1 做出容易使用的應用程序 23.2 設計的減法 23.3 規(guī)劃應用程序的目標 23.4 創(chuàng)建新項目 23.4.1 XML說明文件 23.4.2 文字字符串文件 23.4.3 程序代碼 第24章 支持多國語言 24.1 抽取文本文件 24.2 讓中文、英文多個語言界面并存 24.3 切換語言 24.3.1 設置中切換語系 24.3.2 程序中切換語言 24.4 參考資料 第25章 針對特性配置(Orientation) 25.1 配置資料夾的命名規(guī)則 25.1.1 屏幕方向 25.1.2 觸控類型(Touc-hscreen type) 25.1.3 文字輸入方式(text input) 25.1.4 瀏覽方式(navig-ation method) 25.1.5 屏幕分辨率 25.2 Android手機配置實例 25.3 指定屏幕方向 25.3.1 配置文件中指定屏幕方向 25.3.2 程序中指定屏幕方向 25.4 參考資料 第26章 使用接口(Adapter) 26.1 接口的概念 26.2 數(shù)組接口(Array Adapter)與字符串數(shù)組 26.3 數(shù)組字符串資源文件 26.4 參考資料 第27章 添加下拉菜單組件(Spinner) 27.1 修改XML說明文件 27.2 添加程序 27.3 記錄所選擇的優(yōu)先級 27.4 參考資料 第28章 簽發(fā)應用程序密鑰(Keytools) 28.1 檢查列表 28.2 手動導出應用程序 28.3 產(chǎn)生密鑰 28.4 簽署密鑰 28.5 驗證密鑰 28.6 安裝到模擬器 28.7 發(fā)布應用程序 28.8 參考資料 第29章 發(fā)布到Android Market 29.1 Android Market的運作方式 29.2 注冊Android Market 29.3 上傳應用程序到Android Market 29.4 查看成果——查看管理界面 29.5 自行提供程序在線下載 29.6 發(fā)布到第三方Android應用程序下載網(wǎng)站 29.7 針對用戶作設計 29.8 參考資料 第5篇 數(shù)據(jù)庫應用 第30章 添加列表活動(ListActivity) 30.1 分析記事本程序 30.2 創(chuàng)建新項目 30.3 修改程序代碼 30.3.1 講解 30.3.2 自定義ListView組件 30.3.3 自定義空列表顯示內(nèi)容 30.4 參考內(nèi)置范例 30.5 參考資料 第31章 使用數(shù)據(jù)庫(SQLite) 31.1 SQLite數(shù)據(jù)庫簡介 31.2 查看模擬器目錄 31.3 手動創(chuàng)建“SQLite”數(shù)據(jù)庫 31.4 創(chuàng)建數(shù)據(jù)表(table) 31.5 驗證 31.5.1 離開SQLite互動模式 31.5.2 重新打開SQLite數(shù)據(jù)庫 31.6 讓Android模擬器通過Proxy上網(wǎng) 31.6.1 查詢數(shù)據(jù) 31.6.2 添加數(shù)據(jù) 31.6.3 確認數(shù)據(jù) 31.6.4 更新數(shù)據(jù) 31.6.5 刪除數(shù)據(jù) 31.7 參考資料 第32章 訪問數(shù)據(jù)表(SQLite OpenHelper) 32.1 SQLiteOpenHelper 32.2 對NotesDbAdapter類加工 32.3 使用NotesDb Adapter類 32.3.1 講解 32.3.2 驗證 32.4 添加查詢 32.5 完整的程序 32.6 參考資料 第33章 添加增刪改查操作(CRUD) 33.1 檢索(Retrieve) 33.1.1 講解 33.1.2 驗證 33.2 添加(Create) 33.2.1 講解 33.2.2 驗證 33.3 刪除 33.4 查詢單條記錄、修改 33.5 參考資料 第34章 添加相依的活動(Activity ForResult) 34.1 定義XML說明文件 34.2 添加編輯類 34.3 將新Activity添加列表 34.4 打開編輯頁面 34.5 完整的程序 34.6 參考資料 第35章 添加長按菜單(ContextMenu) 35.1 添加長按菜單框架 35.2 填入菜單內(nèi)容 35.3 后續(xù)改進 35.4 參考資料 第6篇 地圖與定位應用 第36章 申請Google地圖服務(API Key) 36.1 取得地點坐標 36.2 取得Google地圖開發(fā)密鑰(API Key) 36.2.1 調(diào)試用密鑰(debug keystore)的位置 36.2.2 取得MD5指紋信息 36.3 參考資料 第37章 使用地圖(MapView) 37.1 Google地圖的組成元素 37.2 創(chuàng)建新項目 37.3 定義列表 37.4 定義XML資源文件 37.5 產(chǎn)生地圖 37.6 直接用程序定義界面組件 37.7 控制地圖 37.8 添加縮放圖標 37.8.1 修改XML說明文件 37.8.2 加上縮放控制(Zoom Controls) 37.9 新版的改進 37.10 參考資料 第38章 添加按鍵控制(KeyEvent) 38.1 添加菜單 38.2 添加按鍵控制 38.3 控制縮放范圍 38.4 參考文件 第39章 獲取現(xiàn)在位置(GPS/基站三角定位) 39.1 創(chuàng)建新項目 39.2 添加使用權限(uses-permission) 39.3 定義LocationListener界面 39.4 使用定位服務管理器(locationManager)來獲取現(xiàn)在位置 39.4.1 講解 39.4.2 自動判斷最佳定位服務來源 39.5 更新地點(Location Updates) 39.6 在模擬器中切換地點 39.7 完整的程序 39.8 參考資料 第40章 結(jié)合地圖與定位功能(My LocationOverlay) 40.1 添加定位層(MyLocation Overlay) 40.2 參考資料 第41章 為地圖標上地標(Itemized Overlay) 41.1 設置圖標層(Itemized Overlay) 41.2 添加圖標層 41.3 地圖開發(fā)備忘列表 41.4 參考資料 后記 附錄A 如何取得范例源代碼
章節(jié)摘錄
插圖:地圖確實是個讓人充滿想象的媒介。這年頭只要是智能型手機,上面幾乎都有“Google地圖”(Google Map)可使用。用戶可以通過在Google地圖中輸入地址或地標來搜索目標地點。使用Google地圖可以取得目標地附近的地圖、查詢行車路線,或是列出附近的建筑物空照圖(衛(wèi)星圖)、查看街景(StreetView)等等功能.也可以搭配GPS等定位系統(tǒng),來查詢目前位置附近的信息.在Android平臺上,我們不僅可以使用基本的Google地圖,還可以基于Google地圖服務所提供的地圖資料,進一步自定義“MapView”界面組件(Google地圖的基本組件)中的各種元素,編寫不同的地圖應用程序。并通過“定位”、“電子羅盤”等功能,結(jié)合Android平臺的隨身與移動特性,做出具個性化、區(qū)域性的獨特地圖與各種充滿想象力的定位應用程序。我們將使用.Android極富特色的地圖與定位功能,以“火車站導覽”應用程序為范例,編寫地圖與定位應用程序。我們將使用以Google地圖為基礎的“MapView”組件,組合出一個簡單的火車站導航應用程序.可以在列表中選擇北京、上海、廣州車站,并查看車站附近的地圖.36.1 取得地點坐標講到使用地圖,就會談到地圖坐標的表示法,地圖坐標的表示法是我們編寫地圖程序的基礎。傳統(tǒng)上常見的地圖坐標表示法,是把整個橢圓形的地球表面,由北極到南極,等分畫上一個個南北向的圓圈。表示所在地南北方向的“緯度”(latitude).再將南北級連接成一條條線,以通過英國格林威治天文臺所在地的線為0°線(東經(jīng)、西經(jīng)各180°),來表示所在地相對東西方向的“經(jīng)度”(longitude)。
后記
在千變?nèi)f化的潮流中,最重要的就是以不變應萬變。 在簡單易學和提供完整詳盡的信息之間,總是很難達到平衡。開始寫作后才發(fā)現(xiàn):基礎的東西學起來很簡單,而解釋起來,不但要把握住核心概念與細節(jié),還得避免“離題”到其它較深入的地方,以致嚇壞了初學者,這實在是件很不容易的事情。隨著寫作內(nèi)容的深入,要保持本書學習簡單、前后連貫的風格,寫作上當然也碰到越多麻煩。對作者本人來說,支撐著我們克服諸多障礙的支柱,是繼續(xù)朝著“幫助以中文為母語的開發(fā)者,更快上手Android應用程序開發(fā)”的初衷前進,終至完成本書。在本書的入門、初級、中級的主題中,講解了如何編寫Android界面、代碼;如何添加菜單;與應用程序如何在多個Activity之間切換等內(nèi)容。了解了這些內(nèi)容,已足夠我們寫出一般的Android應用程序。在融會貫通的主題中,通過實戰(zhàn)性的操作帶讀者走了一遍開發(fā)應用程序的流程。最后兩個數(shù)據(jù)庫應用、地圖與定位應用的主題,則幫助讀者了解Android平臺上完整地保存數(shù)據(jù)方式,與如何應用地圖與定位服務。筆者敢說自己已勉強達到了讓本書簡單易學的目標,但是在精力與寫作時間、篇幅之間取舍,還是謹慎地過濾掉太多繁雜的內(nèi)容,只留下精華放在書中。Android是個完整的平臺,還有諸多內(nèi)容值得研究。一些高級的主題,如應用程序間共享內(nèi)容(Content:Provider)、服務(Service)、整合網(wǎng)絡服務、瀏覽器脫機應用程序、相機與條形碼、動作感應、手勢感應、3D、繪圖、游戲、影音、通話與短信等等,就不在定位為“入門”的本書中提及。相信讀者在讀完本書后,將具備充足的基礎知識,能充滿信心地根據(jù)自己的需求,繼續(xù)學習這些高級的主題。Android平臺相當年輕,且充滿活力。每隔一陣子,都會有新的功能冒出來。本書提供了一個相當好的入門磚,讓您跨過Android平臺的入門障礙。 然而想要再高級,仍然必須學習查看英文數(shù)據(jù)。
編輯推薦
《Google Android開發(fā)入門指南(第2版)》全部內(nèi)容基于Android SDK1.5Windows、MacOS X、Linux平臺適用Android開發(fā)入門的詳細教程,適合Android與J2ME的初學者學習,以編寫實例為教學主線,真正助您解決開發(fā)中遇到的諸多實際問題。Android核心開發(fā)團隊成員程本中、知名Android講師盧育圣鼎力推薦。贏在3G,“贏”向用Android開發(fā)的無限商機《Google Android開發(fā)入門指南(第2版)》特色在可預見的將來,基于Android平臺的手持設備程序設計,將像今日的PC程序設計一樣普及。還不熟悉JaVa語言,但也想快速學會Android應用程序開發(fā)?《Google Android開發(fā)入門指南(第2版)》為您降低Android開發(fā)入門的臺階。跟隨著擁有Android Market單一程序下載量超過20萬人次的開發(fā)者,用最短的時間循序漸進地學會必要的Android應用程序開發(fā)基礎知識,然后……開始開發(fā)吧!《Google Android開發(fā)入門指南(第2版)》在您學習Android應用程序開發(fā)的過程中,處處以實例為導向,于需要處時才對相關概念進行詳細的解說。為初學者掌握Android開發(fā)提供了一條快速入門的捷徑。
圖書封面
圖書標簽Tags
無
評論、評分、閱讀與下載
Google Android開發(fā)入門指南 PDF格式下載