Android 4.X 開發完全上手——手把手構建完整Android App范例 ( 簡體 字) |
作者:James Talbot,Justin McLean著 | 類別:1. -> 程式設計 -> 手機程式 -> Android |
譯者:張永基 譯 |
出版社:清華大學出版社 | 3dWoo書號: 40326 詢問書籍請說出此書號!【有庫存】 NT售價: 300 元 |
出版日:11/14/2014 |
頁數:328 |
光碟數:0 |
|
站長推薦: |
印刷:黑白印刷 | 語系: ( 簡體 版 ) |
|
加入購物車 │加到我的最愛 (請先登入會員) |
ISBN:9787302383079 |
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 序 |
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證) |
作者序: |
譯者序: |
前言:對本書的贊譽 James Talbot 和Justin McLean 做了一項了不起的工作,寫了這本適合初學者的教程。本書的焦點在于帶領讀者搭建開發環境,編寫應用程序,乃至在最后發布應用程序。本書中包含大多數開發者渴望了解的內容,從應用程序的基本結構和功能、樣式的應用、測試和優化到社交媒體的使用。 —— Matthew Boles,Brightcove公司學術專家
本書是一座用于開發Android應用程序的信息完備的寶藏。它適用于喜歡細節描述的人,也適用于喜歡書中有大量高質量示例代碼的人。本書是一個一站式服務點,通過最相關的示例應用程序將讀者從零基礎引領到發布應用程序。書中的示例應用程序被構建、重構和優化,使讀者掌握一個真正的Android開發者需要了解的所有概念和技能。做得好,Justin和James! —— Jun Heider,RealEyes Media公司資深架構師和高級開發經理
這是一本獨一無二的書,它迭代地涵蓋了生產級Android應用程序的每個方面——需求、設計、開發、測試和發布。 —— Romin Irani,Mind Storm Software的經營者
本書涵蓋了接觸Android開發平臺時經常遇到的各種情況。對于初學者來說,可以通過書中提供的通俗易懂的示例逐步學習, 而對于那些比較熟悉Android的開發者來說,將會找到遍布于書中各處的許多珍貴的知識點。書中的一切都以通俗易懂的方式編寫,并有實際的例子演示,這些例子可立即應用到大量開發項目中,這本書真是太棒了! —— Joseph Labrecque,丹佛大學高級互動軟件工程師
譯 者 序 這是一本優秀的Android開發入門書籍。 Android初學者總有這樣的體會:書看完了,例子也做了,但對怎樣從頭設計制作一款自己的程序仍然找不到頭緒,不知該如何入手。 本書很好地解決了這個問題。它通過一個On Your Bike實例貫穿本書,指引讀者建立開發環境,編寫應用程序,并最終發布程序,詳細描述了一個應用程序從開始到結束的全過程。通過本書的學習,初學者不但可以快速掌握Android開發的基礎知識,還能在頭腦中形成Android開發的基本概念,知道全新開發一個應用程序應該做那些事情。包括建立項目、制作UI、提高可用性、定制應用程序、識別位置、使用社交網絡、優化性能、減少功耗、測試、多語言支持和發售等。 本書中的很多內容都是在其他書中所沒有的。比如weight的原理剖析、如何制作自適應的圖標、如何處理不精確的傳感器數據等。即便是對掌握Android基礎知識的開發者來說,本書也有很好的借鑒意義。 這里要感謝清華大學出版社的編輯們,他們為本書的翻譯投入了巨大熱情并付出了很多心血。沒有他們的幫助和鼓勵,本書不可能順利付梓。 對于這本經典之作,譯者本著“誠惶誠恐”的態度,在翻譯過程中力求“信、達、雅”,但鑒于譯者水平有限,錯誤和失誤在所難免,如有任何意見和建議,請不吝指正。感激不盡!本書全部章節由張永基翻譯,參與本書翻譯活動的還有李艷、杜旭、苗茜、張永秀、苗得文、張永琴、董見軍、李軍和趙紅偉。 相信通過本書的學習,讀者朋友們可以快速掌握Android編程,快速加入到Android開發大軍中。
張永基
作 者 簡 介 James Talbot在Adobe工作已經超過十年,從事過銷售工程、專業服務和培訓工作,有多年的面向對象編程和Web應用程序經驗。他目前正在Java內容倉庫(Java Content Repository,JCR)上(基于開源標準)構建激動人心的網絡、移動網絡、原生的Android應用程序。他參與撰寫了Object-Oriented Programming with ActionScript 2.0(New Riders Press,2004)和Adobe Flex 2:Training from the Source(Adobe Press,2006),以及Adobe Flex 3:Training from the Source(Adobe Press,2008)。他還為Lynda.com和Total Training錄制培訓視頻,并花了大量時間在課堂授課。他對Adobe網絡產品有深入的理解,并在無數會議上發過言。 Justin Mclean從Web的早期以來一直在寫代碼。15年來,他已經成立了自己的咨詢公司Class Software。在那段期間內他開發過數以百計的瀏覽器、桌面和移動應用程序。他見過技術產業的重大革新、瀏覽器大戰和網絡泡沫。他是一個Apache Flex提交者、董事會成員、發布經理和一個Adobe社區的專家。他講授培訓課程,并在全世界無數的會議上發言。在業余時間他鉆研開源電子產品。 讀者服務 訪問我們的網站informit.com/register并注冊本書,這樣就可以訪問任意的更新、下載或本書的勘誤表。
致 謝 筆者要對以下人員表示感謝: 感謝Jorge Hernandez,是他最先提出自行車計算機應用的想法,并幫助我們編寫最初的章節并設定版式。 感謝Romin Irani、Douglas Jones和Prashant Thakkar,作為本書的技術審核人員,他們在審核過程中檢查出許多大大小小的問題。如果不是他們投入時間和精力去審核本書的內容和代碼,這本書也不會有如此高的質量。 感謝Betsy Hardinger,專業能人絕對驚人的編輯,他想到了很多我們沒有想到的東西。我們感謝她的專業精神和熱忱付出。 感謝開發編輯Michael Thurston,他忍受了我們糟糕的語法和拼寫、不一致的格式、有歧義的語言和結構,最終將文檔初稿轉換成適于出版的文檔。 感謝Olivia Basegio,他給予我們莫大的幫助,在出版本書的艱巨過程中,他經常適時介入,使我們感覺輕松了很多。 感謝項目主編Laura Lewin,感謝她不懈的研究和幫助,使我們一直按照計劃推進。我們欠她太多了,衷心感謝她的職業精神。 還要感謝Julian Ledger,他幫助我們設計“On Your Bike”這個Android應用程序的圖標,是制作本書的總設計指導。 最后,我們也要為國際化章節感謝以下人士,他們幫助我們把應用程序資源字符串翻譯成他們自己的語言: Kai K?nig(德國)、Carlos Rovira(西班牙)、Frederic Thomas(法國)、Christophe Herreman(荷蘭)和John Koch(日本)
前 言 這是一本教你如何從頭到尾編寫一個Android應用程序的書。它假設你已經有一些Web開發或編程經驗,但可能不熟悉Java語言或Android操作系統,或不熟悉Android API/SDK的工作知識。本書將介紹編寫Android應用程序的最佳實踐,也將闡述如何解決現實世界的問題,如設備分化等。你將學到編寫兼容大多數Android操作系統的同時,還能利用最新的Android特性的代碼的方法。你還將探索使用傳感器數據(通常是不準確的)的方法。還將學習保護設備的電池壽命的方法,以及使程序輕松支持多個國家和語言的方法。 書中的每一章都建立在前一章的基礎上,循序漸進地鋪開,直到你獲得一個完整的工作應用程序。本書的閱讀順序非常合理,但你也可以跳過你已經理解的章節內容,因為每個章節的代碼都可以在本書的網站上或GitHub上找到。無論如何,請記住本書的目標:通過實際動手來學習,如果你認真研讀每一章的內容,你將學到很多有用的最佳實踐。 本書主要面向Web開發人員和程序員(可能有很少或根本沒有Android或Java開發經驗,但是想知道如何從頭到尾寫一個完整的Android應用程序)。本書不是API參考,也不是由毫無關聯的代碼片段填充。相反,這是一個需要自己動手,邊做邊學的教程,它將幫助你避免Android開發初學者經常遇到的陷阱和缺陷。當學完所有章節后,你將最終建立一個名為“On Your Bike”的Android應用程序,一個自行車騎手使用的簡便工具。學完這本書后,你會有一個完整的應用程序,并學到足夠的知識來創建自己的應用程序,并把它發布在Google Play和Amazon Appstore上。 學習這本書時,建議你使用真實的Android設備。盡管本書大部分的內容可以通過使用一臺電腦和Android模擬器來學習,但有些事情只能在真正的設備上才能完成。 代碼范例 每個章節的代碼清單可以在這本書的網站上找到: http://www.androiddevbook.com/code.html 代碼清單也可以在GitHub上找到: https://github.com/androiddevbook/onyourbike 應用程序也可以在Google Play中找到: https://play.google.com/store/apps/details?id=com.androiddevbook.onyourbike.book 此外,讀者也可從www.tupwk.com.cn/downpage下載源代碼。在這里,你還可以下載附贈的KitKat章節,該章的題目是Exploring Android 4.4 KitKat。 如果你有任何關于這本書或代碼的問題,請與作者聯系:james@androiddevbook.com或justin@androiddevbook.com。你可在Twitter(@androiddevbook)關注相關內容。此外,也可將意見和建議發送到wkservice@vip.163.com。代碼和更多信息請查詢網站:http://www. androiddevbook.com。
|
內容簡介:《Android 4.X開發完全上手——手把手構建完整Android App范例》從頭構建一個功能完備的應用程序,從而帶你熟練掌握現代Android編程技術。你將能使用Android 4.3工具集解決每個Android開發人員都會遇到的實際問題,并學習成功開發移動項目的最佳實踐。 如果你的Android開發經驗很少,甚至從未開發過Android項目,但已經掌握了Java基礎知識,那么本書無疑是你的理想之選。頂尖Android開發大師James Talbot和Justin McLean精心設計了涵蓋整個開發過程的練習,指引你構建一個緊貼實用的自行車移動應用程序,來處理從“里程追蹤”乃至“路線規劃”的所有事項。每章環環相扣,一步步地夯實你的Android知識,最終獲得一個可運行的完整應用程序。 在學習過程中,你將可以積累實際編碼經驗,你的代碼將使用Android最新功能,并在最廣泛的設備上運行。你將學會運用成熟方案來解決Android開發過程中不時出現的棘手問題,如傳感器數據失準和電池續航能力不足等,而這些是其他大多數Android圖書常忽略的編程陷阱。 涵蓋內容 ◆ 在Windows和Mac上配置Android開發環境 ◆ 快速創建一個可運行的簡單應用程序,演示Android基本原理 ◆ 熟悉Activity、Intent、Service和Resource等核心部件 ◆ 構建一個可用的用戶界面,然后使其更直觀有效 ◆ 為Android應用程序設計專業風格 ◆ 使應用程序能感知位置 ◆ 集成社交網絡功能 ◆ 構建高效的線程化應用程序 ◆ 集成對數據庫的支持,以便讀寫數據 ◆ 提高應用程序運行速度,減少占用的內存和功耗 ◆ 高效地測試和調試應用程序 ◆ 輕松實現應用程序的國際化,從而在多個國家和語言區域中使用 ◆ 通過Google Play和Amazon AppStore銷售應用程序
|
目錄:第1章 Android開發簡介 1 1.1 了解Android的優勢 1 1.2 構建本地應用程序 2 1.3 Android的歷史 2 1.4 Android用戶界面 7 1.5 Android應用程序 8 1.6 Google Play簡介 8 1.7 小結 10 第2章 搭建開發環境 11 2.1 在Windows上安裝Java JDK和JRE 11 2.2 在Windows上安裝Eclipse集成開發環境 13 2.2.1 安裝Eclipse 13 2.2.2 在Eclipse中配置Java JRE 14 2.2.3 熟悉Eclipse 14 2.3 在Windows上安裝Android SDK 16 2.4 Mac系統上安裝和使用Java 19 2.4.1 在Mac電腦上下載并安裝JDK 20 2.4.2 在Mac上下載并安裝Eclipse IDE 20 2.4.3 在Mac上下載并安裝Android SDK 20 2.4.4 在Mac上安裝Android Developer Tools插件 21 2.5 小結 22 第3章 創建第一個Android應用程序 23 3.1 創建Android應用程序 23 3.2 運行Android項目 25 3.2.1 創建Android虛擬設備 25 3.2.2 在AVD中運行應用程序 26 3.2.3 使用Android虛擬設備的最佳實踐 28 3.2.4 在實際設備上安裝Android應用程序 28 3.3 在Android項目中使用Lint 29 3.4 Android項目文件 29 3.4.1 XML布局文件 29 3.4.2 XML資源文件 31 3.4.3 XML文件中的ID屬性及其在生成的文件中的作用 32 3.4.4 Activity文件 33 3.4.5 Activity的生命周期 35 3.4.6 訪問Activity中的TextView 35 3.4.7 應用程序日志 37 3.4.8 Android清單文件 39 3.5 小結 40 第4章 創建Android用戶界面 41 4.1 重構代碼 41 4.2 實施Strict模式 43 4.3 創建一個簡單的用戶界面 44 4.3.1 線性布局的用法 45 4.3.2 創建按鈕事件處理程序 48 4.3.3 更新計時器顯示 51 4.3.4 顯示正在運行的計時器 53 4.4 Activity生命周期 55 4.4.1 Android Activity生命周期 57 4.4.2 修復Activity生命周期問題 59 4.5 實現Android設備的振動 59 4.6 保存用戶首選項 61 4.6.1 創建新的Activity 61 4.6.2 顯示新的Activity 62 4.6.3 保存應用程序的狀態 63 4.6.4 使用Shared Preferences 65 4.7 小結 67 第5章 提高Android應用程序可用性 69 5.1 重構代碼 69 5.2 改善Setting Activity 75 5.2.1 顯示Toast彈出窗口 75 5.2.2 使用后退按鈕從Settings Activity返回 78 5.3 操作欄和菜單 80 5.3.1 創建菜單 80 5.3.2 創建一個操作欄 82 5.3.3 返回Home畫面 84 5.4 使用通知 86 5.4.1 創建通知 86 5.4.2 顯示或替換一個新的通知 89 5.4.3 定期顯示通知 89 5.5 創建數據庫 92 5.5.1 創建數據模型 93 5.5.2 創建數據庫及其表 93 5.5.3 檢查表的創建 96 5.5.4 創建表間的關系 97 5.5.5 創建路線列表視圖 101 5.6 小結 106 第6章 自定義Android應用程序 107 6.1 重構應用程序 107 6.2 了解屏幕的差異 108 6.2.1 屏幕尺寸和屏幕密度 108 6.2.2 了解設備 109 6.3 使應用程序與分辨率無關 110 6.4 使用配置限定符 112 6.4.1 創建啟動圖標 114 6.4.2 創建通知圖標 115 6.4.3 讓應用程序適合不同的屏幕尺寸 116 6.4.4 使用資源尺寸 118 6.4.5 在Java代碼中改變文字的大小 120 6.4.6 修改橫屏模式的布局 122 6.4.7 修改平板電腦的布局 123 6.4.8 創建并排的視圖 124 6.5 使用樣式和主題 126 6.5.1 啟用夜間模式 128 6.5.2 切換主題 130 6.5.3 檢測亮度級別 134 6.5.4 處理不穩定的傳感器值 136 6.6 小結 138 第7章 使應用程序支持位置感知 139 7.1 重構代碼 139 7.2 定位設備的位置 143 7.2.1 在虛擬設備中測試GPS 148 7.2.2 GPS定位的精度 149 7.2.3 提高GPS定位的用戶體驗 150 7.2.4 顯示Google Maps 153 7.3 處理不精確的位置數據 161 7.4 保存GPS數據 167 7.4.1 插入、更新和刪除數據 167 7.4.2 更新模型 170 7.4.3 在應用程序中使用數據庫 176 7.5 顯示GPS數據 179 7.5.1 使用ListActivity 179 7.5.2 在Google地圖中顯示GPS數據 184 7.6 小結 189 第8章 集成社交網絡 191 8.1 重構代碼 191 8.2 將照片整合到Android應用程序中 191 8.2.1 拍照 192 8.2.2 檢查是否可以拍照 194 8.2.3 在應用程序中顯示相片 198 8.2.4 獲得Activity的結果 203 8.3 與朋友分享內容 207 8.3.1 顯示選擇器 207 8.3.2 分享文本和圖片 210 8.4 小結 212 第9章 優化性能、內存和電源管理 213 9.1 重構代碼 213 9.2 讓應用程序以服務形式運行 213 9.2.1 處理方向改變 214 9.2.2 創建服務 217 9.3 延長電池壽命 229 9.3.1 確定用電量 230 9.3.2 根據電量水平進行響應 231 9.3.3 定期檢查電池 237 9.4 加快數據庫運行速度 239 9.4.1 通過索引加速數據庫 239 9.4.2 使用異步方式加速數據庫 241 9.5 小結 244 第10章 測試應用程序 247 10.1 重構代碼 247 10.2 使用JUnit進行測試 247 10.2.1 創建一個新的測試應用程序 248 10.2.2 提高測試覆蓋率 253 10.2.3 加快測試速度 254 10.2.4 通過重構使測試更容易 258 10.3 使用Android JUnit 擴展來測試 259 10.3.1 測試Android Activity 260 10.3.2 創建Mock應用程序 263 10.3.3 測試Activity生命周期 265 10.3.4 進一步測試Activity 267 10.3.5 通過與UI的交互來測試 269 10.4 測試服務 270 10.5 使用Monkey測試 272 10.6 自動運行測試 275 10.6.1 從命令行運行測試 275 10.6.2 安裝Jenkins 277 10.6.3 使用Git版本控制 278 10.6.4 Git Bash命令概述 280 10.6.5 使用Jenkins 280 10.7 在多種設備上測試 281 10.8 小結 283 第11章 針對不同設備和國家進行優化 285 11.1 重構代碼 285 11.2 國際化 287 11.2.1 支持多語言 287 11.2.2 從簡單的機器翻譯開始 288 11.2.3 在用戶的幫助下改善翻譯結果 292 11.2.4 添加更多語言版本 294 11.3 適應各種方言 298 11.3.1 添加區域碼 298 11.3.2 處理單詞的變化:Route、Path、Trail和Track 299 11.4 處理各種語言格式 300 11.4.1 支持從右至左布局 300 11.4.2 處理日期、數字和貨幣的變體 301 11.5 支持向后兼容 303 11.5.1 使用Android支持庫 303 11.5.2 Android版本檢查 303 11.6 為各種屏幕尺寸進行構建 306 11.7 使用Fragment 309 11.8 小結 314 第12章 使用Google Play和Amazon Appstore來銷售應用程序 317 12.1 建立媒體策略 317 12.1.1 使用Google Play 317 12.1.2 使用服務和API實現Google許可 321 12.2 在應用程序中使用廣告 322 12.3 使用Amazon Appstore 325 12.4 小結 327
|
序: |