內容簡介
《Android 4.X 開發完全上手——手把手構建完整Android App範例》從頭構建一個功能完備的應用程序,從而帶你熟練掌握現代Android編程技術。你將能使用Android 4.3工具集解決每個Android開發人員都會遇到的實際問題,並學習成功開發移動項目的最佳實踐。如果你的Android開發經驗很少,甚至從未開發過Android項目,但已經掌握瞭Java基礎知識,那麼《Android 4.X 開發完全上手——手把手構建完整Android App範例》無疑是你的理想之選。頂尖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 瞭解Android的優勢 1.2 構建本地應用程序 1.3 Android的曆史 1.4 Android用戶界麵 1.5 Android應用程序 1.6 Google Play簡介 1.7 小結
第2章 搭建開發環境 2.1 在Windows上安裝Java JDK和JRE 2.2 在Windows上安裝Eclipse集成開發環境 2.2.1 安裝Eclipse 2.2.2 在Eclipse中配置Java JRE 2.2.3 熟悉Eclipse 2.3 在Windows上安裝Android SDK 2.4 Mac係統上安裝和使用Java 2.4.1 在Mac電腦上下載並安裝JDK 2.4.2 在Mac上下載並安裝Eclipse IDE 2.4.3 在Mac上下載並安裝Android SDK 2.4.4 在Mac上安裝Android Developer Tools插件 2.5 小結
第3章 創建第一個Android應用程序 3.1 創建Android應用程序 3.2 運行Android項目 3.2.1 創建Android虛擬設備 3.2.2 在AVD中運行應用程序 3.2.3 使用Android虛擬設備的最佳實踐 3.2.4 在實際設備上安裝Android應用程序 3.3 在Android項目中使用Lint 3.4 Android項目文件 3.4.1 XML布局文件 3.4.2 XML資源文件 3.4.3 XML文件中的ID屬性及其在生成的文件中的作用 3.4.4 Activity文件 3.4.5 Activity的生命周期 3.4.6 訪問Activity中的TextView 3.4.7 應用程序日誌 3.4.8 Android清單文件 3.5 小結
第4章 創建Android用戶界麵 4.1 重構代碼 4.2 實施Strict模式 4.3 創建一個簡單的用戶界麵 4.3.1 綫性布局的用法 4.3.2 創建按鈕事件處理程序 4.3.3 更新計時器顯示 4.3.4 顯示正在運行的計時器 4.4 Activity生命周期 4.4.1 Android Activity生命周期 4.4.2 修復Activity生命周期問題 4.5 實現Android設備的振動 4.6 保存用戶首選項 4.6.1 創建新的Activity 4.6.2 顯示新的Activity 4.6.3 保存應用程序的狀態 4.6.4 使用Shared Preferences 4.7 小結
第5章 提高Android應用程序可用性 5.1 重構代碼 5.2 改善Setting Activity 5.2.1 顯示Toast彈齣窗口 5.2.2 使用後退按鈕從Settings Activity返迴 5.3 操作欄和菜單 5.3.1 創建菜單 5.3.2 創建一個操作欄 5.3.3 返迴Home畫麵 5.4 使用通知 5.4.1 創建通知 5.4.2 顯示或替換一個新的通知 5.4.3 定期顯示通知 5.5 創建數據庫 5.5.1 創建數據模型 5.5.2 創建數據庫及其錶 5.5.3 檢查錶的創建 5.5.4 創建錶間的關係 5.5.5 創建路綫列錶視圖 5.6 小結
第6章 自定義Android應用程序 6.1 重構應用程序 6.2 瞭解屏幕的差異 6.2.1 屏幕尺寸和屏幕密度 6.2.2 瞭解設備 6.3 使應用程序與分辨率無關 6.4 使用配置限定符 6.4.1 創建啓動圖標 6.4.2 創建通知圖標 6.4.3 讓應用程序適閤不同的屏幕尺寸 6.4.4 使用資源尺寸 6.4.5 在Java代碼中改變文字的大小 6.4.6 修改橫屏模式的布局 6.4.7 修改平闆電腦的布局 6.4.8 創建並排的視圖 6.5 使用樣式和主題 6.5.1 啓用夜間模式 6.5.2 切換主題 6.5.3 檢測亮度級彆 6.5.4 處理不穩定的傳感器值 6.6 小結
第7章 使應用程序支持位置感知 7.1 重構代碼 7.2 定位設備的位置 7.2.1 在虛擬設備中測試GPS 7.2.2 GPS定位的精度 7.2.3 提高GPS定位的用戶體驗 7.2.4 顯示Google Maps 7.3 處理不精確的位置數據 7.4 保存GPS數據 7.4.1 插入、更新和刪除數據 7.4.2 更新模型 7.4.3 在應用程序中使用數據庫 7.5 顯示GPS數據 7.5.1 使用ListActivity 7.5.2 在Google地圖中顯示GPS數據 7.6 小結
第8章 集成社交網絡 8.1 重構代碼 8.2 將照片整閤到Android應用程序中 8.2.1 拍照 8.2.2 檢查是否可以拍照 8.2.3 在應用程序中顯示相片 8.2.4 獲得Activity的結果 8.3 與朋友分享內容 8.3.1 顯示選擇器 8.3.2 分享文本和圖片 8.4 小結
第9章 優化性能、內存和電源管理 9.1 重構代碼 9.2 讓應用程序以服務形式運行 9.2.1 處理方嚮改變 9.2.2 創建服務 9.3 延長電池壽命 9.3.1 確定用電量 9.3.2 根據電量水平進行響應 9.3.3 定期檢查電池 9.4 加快數據庫運行速度 9.4.1 通過索引加速數據庫 9.4.2 使用異步方式加速數據庫 9.5 小結
第10章 測試應用程序 10.1 重構代碼 10.2 使用JUnit進行測試 10.2.1 創建一個新的測試應用程序 10.2.2 提高測試覆蓋率 10.2.3 加快測試速度 10.2.4 通過重構使測試更容易 10.3 使用Android JUnit 擴展來測試 10.3.1 測試Android Activity 10.3.2 創建Mock應用程序 10.3.3 測試Activity生命周期 10.3.4 進一步測試Activity 10.3.5 通過與UI的交互來測試 10.4 測試服務 10.5 使用Monkey測試 10.6 自動運行測試 10.6.1 從命令行運行測試 10.6.2 安裝Jenkins 10.6.3 使用Git版本控製 10.6.4 Git Bash命令概述 10.6.5 使用Jenkins 10.7 在多種設備上測試 10.8 小結
第11章 針對不同設備和國傢進行優化 11.1 重構代碼 11.2 國際化 11.2.1 支持多語言 11.2.2 從簡單的機器翻譯開始 11.2.3 在用戶的幫助下改善翻譯結果 11.2.4 添加更多語言版本 11.3 適應各種方言 11.3.1 添加區域碼 11.3.2 處理單詞的變化:Route、Path、Trail和Track 11.4 處理各種語言格式 11.4.1 支持從右至左布局 11.4.2 處理日期、數字和貨幣的變體 11.5 支持嚮後兼容 11.5.1 使用Android支持庫 11.5.2 Android版本檢查 11.6 為各種屏幕尺寸進行構建 11.7 使用Fragment 11.8 小結
第12章 使用Google Play和Amazon Appstore來銷售應用程序 12.1 建立媒體策略 12.1.1 使用Google Play 12.1.2 使用服務和API實現Google許可 12.2 在應用程序中使用廣告 12.3 使用Amazon Appstore 12.4 小結
前言/序言
《Android 4.X開發完全上手:手把手構建完整Android App範例》:開啓您的移動應用開發之旅 在當今這個移動互聯網爆炸式增長的時代,Android操作係統以其開放性、靈活性和龐大的用戶基礎,成為瞭無數開發者追逐的舞颱。掌握Android開發技能,意味著您將有機會參與到構建改變人們生活方式的應用程序的創作之中。本書——《Android 4.X開發完全上手:手把手構建完整Android App範例》——正是您踏上這條激動人心的移動應用開發之路的最佳起點。 本書的目標清晰而堅定:賦能讀者,使其能夠從零開始,獨立構建齣功能完備、用戶體驗齣色的Android應用程序。 我們深知,對於初學者而言,理論知識的海洋固然重要,但更關鍵的是將知識轉化為實踐,通過親手構建真實可運行的項目來加深理解和掌握。因此,本書摒棄瞭空泛的理論陳述,而是以“手把手”的實戰教學為核心,通過精心設計的、循序漸進的應用程序範例,引導讀者一步步深入Android開發的各個層麵。 本書內容預覽: 本書並非一本枯燥的API參考手冊,而是一本充滿實踐指導的開發教程。我們將從最基礎的概念講起,逐步深入到Android開發的核心技術和常用組件,最終目標是讓您能夠獨立思考並實現一個完整的、具有一定復雜度的Android應用。 Android開發環境的搭建與初步探索: 在開始編碼之前,一個穩定高效的開發環境是必不可少的。本書將詳細指導您如何安裝和配置Android SDK,以及集成開發環境(IDE)——Android Studio。我們將一同熟悉IDE的界麵布局、項目結構,並創建一個“Hello, World!”應用,讓您體驗從零到一構建第一個Android應用的成就感。這一過程中,您將初步瞭解Android項目的組成部分,如Manifest文件、資源文件等,為後續的學習打下基礎。 Android應用的基本組件與生命周期: 理解Android應用的核心組件是掌握其運行機製的關鍵。本書將深入講解Activity(活動)的概念,包括其生命周期(創建、啓動、暫停、停止、銷毀等)以及如何通過Intent(意圖)在不同Activity之間進行導航和數據傳遞。您將學習如何設計用戶界麵,包括使用XML布局文件定義各種UI元素,如TextView、EditText、Button、ImageView等。同時,我們也會探討Fragment(碎片)這一重要的UI構建模塊,以及如何通過它們實現更靈活、更模塊化的UI設計。 用戶界麵(UI)的設計與交互: 一個吸引人的用戶界麵是用戶能否愉快使用應用的基礎。本書將帶領您探索Android UI設計的方方麵麵。您將學習如何利用各種布局管理器(如LinearLayout、RelativeLayout、ConstraintLayout)來組織UI元素,實現自適應不同屏幕尺寸的設計。我們還將深入講解列錶視圖(ListView)和網格視圖(GridView)的使用,以及如何通過Adapter(適配器)來高效地展示大量數據。更重要的是,您將學會如何響應用戶的觸摸、點擊等交互事件,並據此更新UI或執行相應的邏輯操作。 數據存儲與管理: 幾乎所有的應用程序都需要存儲和管理數據。本書將全麵介紹Android提供的數據存儲方案。您將學習如何使用SharedPreferences來存儲簡單的鍵值對數據,如用戶偏好設置。更進一步,我們將深入講解SQLite數據庫的使用,包括如何創建數據庫、定義錶結構、執行CRUD(創建、讀取、更新、刪除)操作,以及如何有效地管理數據,保證應用的數據一緻性和可靠性。對於需要更高級數據管理的場景,我們也會簡要介紹ContentProvider(內容提供者)的概念,以及它在跨應用數據共享中的作用。 網絡通信與數據獲取: 現代Android應用大多需要與網絡服務器進行通信,獲取或發送數據。本書將指導您如何實現這一功能。您將學習如何使用HTTP協議,並通過Android提供的API(如HttpURLConnection、OkHttp庫)來發送網絡請求,獲取JSON、XML等格式的網絡數據。同時,我們也會介紹如何將獲取到的數據解析並展示在UI上,以及如何處理網絡異常,保證應用的穩定性。 多綫程與異步處理: 為瞭避免UI阻塞,提高應用的響應速度,多綫程和異步處理是必不可少的。本書將介紹Android中的多綫程機製,包括Thread、Handler、AsyncTask等,幫助您理解如何在後颱執行耗時操作,並將結果安全地更新到UI綫程。您將學會如何編寫高效的代碼,讓您的應用在處理復雜任務時依然流暢。 服務的應用與後颱任務: 服務(Service)是Android中用於在後颱執行長時間運行操作的組件,而無需用戶交互。本書將深入講解如何創建和管理Service,以及它們在後颱音樂播放、數據同步等場景下的應用。您還將學習如何通過BroadcastReceiver(廣播接收器)來響應係統級彆的事件或應用內部的廣播,實現組件間的解耦和通信。 構建一個完整的Android App範例: 理論結閤實踐,本書最大的亮點在於貫穿始終的、逐步深入的應用程序範例。從一個簡單的待辦事項列錶應用,到具備網絡數據加載和存儲功能的日記本應用,再到更復雜的多功能應用,您將跟隨我們一步步地完成這些項目的編碼、調試和優化。每一個範例都將緊密結閤前述的知識點,幫助您將所學知識融會貫通,並學會如何將這些零散的知識點組閤成一個功能完整的、可發布的Android應用。 本書特色: 強調實踐: 拒絕紙上談兵,每一章都伴隨具體的代碼示例和項目構建過程,讓您邊學邊做,快速上手。 循序漸進: 從基礎概念到高級主題,內容安排閤理,難度逐級提升,適閤不同基礎的讀者。 貼近實戰: 範例應用設計貼近實際需求,讓您在學習過程中就能掌握構建真實世界應用的關鍵技術。 深入淺齣: 用清晰易懂的語言解釋復雜的概念,避免晦澀的技術術語,讓學習過程更加輕鬆愉快。 全麵覆蓋: 涵蓋Android開發的核心組件、UI設計、數據存儲、網絡通信等重要領域,為您構建堅實的開發基礎。 誰適閤閱讀本書? 編程初學者: 即使您沒有Android開發經驗,隻要具備一定的編程基礎(如Java),本書都能引領您成功入門。 希望轉嚮移動開發領域的程序員: 無論您來自Web開發、桌麵應用開發還是其他領域,本書都能幫助您快速掌握Android開發的核心技能。 想要獨立開發Android應用的愛好者: 如果您有一個創意的App想法,但苦於無從下手,本書將為您提供最直接、最有效的實現路徑。 在校學生: 本書是學習Android開發、完成課程項目、提升實踐能力的理想教材。 展望未來: Android開發技術日新月異,但萬變不離其宗。本書聚焦於Android 4.X這一經典且穩定的版本,它為您打下的堅實基礎,將使您能夠更容易地理解和掌握後續Android版本的新特性和新技術。掌握瞭本書的內容,您將具備獨立開發和維護Android應用程序的能力,為您的職業生涯或個人項目開啓無限可能。 現在,就讓我們一起翻開《Android 4.X開發完全上手:手把手構建完整Android App範例》,踏上這段充滿創造與驚喜的移動應用開發之旅吧!