100多個真實範例,完全掌握andorid開發
《Android 開發範例代碼大全(第2版)》教會你如何使用行之有效的解決方案來開發一流的應用程序。首先確定問題,然後通過有效的代碼示例給齣詳細的解決方案。更實用的是,可以將本書中的代碼示例直接應用到你自己的應用程序中,從而節省大量的開發時間。
本書采用100多個真實範例來指導你如何:
● 使用外部庫來提高工作效率
● 使用Android NDK和Renderscript來提高應用程序的性能
● 設計高性能、響應及時、無縫銜接的應用程序
● 在設備和其他外部硬件間傳輸數據
● 持久化應用程序的數據並在不同的應用程序間共用
● 捕捉和播放各種設備中的媒體類型
● 與Web服務進行交互
● 閤理利用用戶界麵
● 分彆通過命令行方式的Android SDK和Eclipse的Android SDK環境開發一個單位換算應用程序
本書擁有大量的實戰指導和有用的示例,可以幫助你編寫當今最火爆移動平颱上的應用程序。眾多編程過程中的建議有助於你更好、更快地完成工作。
Dave Smith,2006 年畢業於科羅拉多礦業學院並獲得電氣工程和計算機科學學位,一直從事嵌入式平颱軟件和硬件的開發。目前,Dave全身心地投入到移動開發領域,現在是Denver.CO 的顧問。從2009 年開始,Dave 就從事Android 平颱各個版本上的開發,包括使用SDK 編寫用戶應用程序以及構建和定製Android 源代碼。他本人比較喜歡的Android 項目是那種可以在用戶設備中集成定製硬件以及可以為定製的嵌入式平颱包含構建Android 的項目。此外,Dave 會定期更新開發博客(blog.wiresareobsolete.com)和Twitter(@devunwired)。
Jeff Friesen,自由職業者,主要從事Java 軟件開發。
第1章 Android入門 1
1.1 Android簡介 1
1.2 Android的發展史 2
1.3 Android架構 4
1.4 應用程序架構 7
1.4.1 組件 7
1.4.2 資源 25
1.4.3 Manifest文件 33
1.4.4 應用程序包 36
1.4.5 安裝Android SDK 36
1.4.6 安裝Android平颱 39
1.4.7 創建Android虛擬設備 42
1.4.8 啓動AVD 44
1.4.9 Univerter簡介 48
1.4.10 創建Univerter 50
1.4.11 安裝和運行Univerter 52
1.4.12 準備Univerter在Google Play上發布 55
1.4.13 移植到Eclipse 60
1.4.14 用Eclipse創建和運行Univerter 63
1.5 小結 66
第2章 用戶界麵範例 67
2.1 自定義窗口 67
2.1.1 問題 67
2.1.2 解決方案 67
2.1.3 實現機製 67
2.2 創建並顯示視圖 77
2.2.1 問題 77
2.2.2 解決方案 77
2.2.3 實現機製 78
2.3 監控單擊動作 79
2.3.1 問題 79
2.3.2 解決方案 80
2.3.3 實現機製 80
2.4 適用於多種屏幕分辨率的圖形資源 81
2.4.1 問題 81
2.4.2 解決方案 81
2.4.3 實現機製 82
2.5 鎖定Activity方嚮 83
2.5.1 問題 83
2.5.2 解決方案 83
2.5.3 實現機製 83
2.6 動態方嚮鎖定 84
2.6.1 問題 84
2.6.2 解決方案 84
2.6.3 實現機製 84
2.7 手動處理鏇轉 86
2.7.1 問題 86
2.7.2 解決方案 86
2.7.3 實現機製 87
2.8 創建彈齣菜單動作 88
2.8.1 問題 88
2.8.2 解決方案 88
2.8.3 實現機製 88
2.9 顯示一個用戶對話框 93
2.9.1 問題 93
2.9.2 解決方案 93
2.9.3 實現機製 94
2.10 自定義選項菜單 98
2.10.1 問題 98
2.10.2 解決方案 98
2.10.3 實現機製 98
2.11 自定義返迴按鍵 101
2.11.1 問題 101
2.11.2 解決方案 101
2.11.3 實現機製 101
2.12 模擬Home按鍵 104
2.12.1 問題 104
2.12.2 解決方案 104
2.12.3 實現機製 104
2.13 監控TextView的變動 105
2.13.1 問題 105
2.13.2 解決方案 105
2.13.3 實現機製 105
2.14 自動滾動的TextView 107
2.14.1 問題 107
2.14.2 解決方案 108
2.14.3 實現機製 108
2.15 動畫視圖 109
2.15.1 問題 109
2.15.2 解決方案 109
2.15.3 實現機製 109
2.16 布局變化時的動畫 119
2.16.1 問題 119
2.16.2 解決方案 119
2.16.3 實現機製 120
2.17 用Drawable做背景 122
2.17.1 問題 122
2.17.2 解決方案 123
2.17.3 實現機製 123
2.18 創建自定義狀態的Drawable 128
2.18.1 問題 128
2.18.2 解決方案 128
2.18.3 實現機製 128
2.19 將遮罩應用到圖片 130
2.19.1 問題 130
2.19.2 解決方案 130
2.19.3 實現機製 130
2.20 創建持久的對話框 134
2.20.1 問題 134
2.20.2 解決方案 134
2.20.3 實現機製 134
2.21 實現針對具體場景的布局 136
2.21.1 問題 136
2.21.2 解決方案 136
2.21.3 實現機製 136
2.22 自定義鍵盤動作 143
2.22.1 問題 143
2.22.2 解決方案 144
2.22.3 實現機製 144
2.23 隱藏軟鍵盤 146
2.23.1 問題 146
2.23.2 解決方案 146
2.23.3 實現機製 147
2.24 自定義AdapterView的空視圖 147
2.24.1 問題 147
2.24.2 解決方案 147
2.24.3 實現機製 147
2.25 自定義ListView行 149
2.25.1 問題 149
2.25.2 解決方案 149
2.25.3 實現機製 149
2.26 製作ListView的節頭部 153
2.26.1 問題 153
2.26.2 解決方案 153
2.26.3 實現機製 153
2.27 創建組閤控件 156
2.27.1 問題 156
2.27.2 解決方案 156
2.27.3 實現機製 157
2.28 處理復雜的單擊事件 160
2.28.1 問題 160
2.28.2 解決方案 160
2.28.3 實現機製 161
2.29 轉發觸摸事件 177
2.29.1 問題 177
2.29.2 解決方案 177
2.29.3 實現機製 177
2.30 創建拖放視圖 181
2.30.1 問題 181
2.30.2 解決方案 181
2.30.3 實現機製 182
2.31 自定義過渡動畫 188
2.31.1 問題 188
2.31.2 解決方案 188
2.31.3 實現機製 189
2.32 創建視圖變換 198
2.32.1 問題 198
2.32.2 解決方案 198
2.32.3 實現機製 198
2.33 視圖之間滑動 204
2.33.1 問題 204
2.33.2 解決方案 204
2.33.3 實現機製 204
2.34 創建模塊化接口 214
2.34.1 問題 214
2.34.2 解決方案 214
2.34.3 實現機製 214
2.35 高性能繪製 223
2.35.1 問題 223
2.35.2 解決方案 224
2.35.3 實現機製 224
2.36 實用工具推薦:Hierarchy Viewer和Lint 234
2.37 Hierarchy Viewer 234
2.38 瀏覽View Hierarchy窗口 236
2.39 Tree View中的單個視圖 238
2.40 使用View Hierarchy進行調試 238
2.41 瀏覽Pixel Perfect窗口 239
2.42 使用Pixel Perfect Overlays 241
2.43 Lint 241
2.44 運行Lint 242
2.45 小結 245
第3章 通信和聯網 247
3.1 顯示Web信息 247
3.1.1 問題 247
3.1.2 解決方案 247
3.1.3 實現機製 247
3.2 攔截WebView事件 251
3.2.1 問題 251
3.2.2 解決方案 251
3.2.3 實現機製 251
3.3 訪問帶JavaScript的WebView 253
3.3.1 問題 253
3.3.2 解決方案 253
3.3.3 實現機製 253
3.4 下載一個圖片文件 255
3.4.1 問題 255
3.4.2 解決方案 256
3.4.3 實現機製 256
3.5 完全在後颱下載 259
3.5.1 問題 259
3.5.2 解決方案 259
3.5.3 實現機製 259
3.6 訪問REST API 262
3.6.1 問題 262
3.6.2 解決方案 262
3.6.3 實現機製 263
3.7 解析JSON 286
3.7.1 問題 286
3.7.2 解決方案 286
3.7.3 實現機製 286
3.8 解析XML 289
3.8.1 問題 289
3.8.2 解決方案 289
3.8.3 實現機製 289
3.9 接收短信 299
3.9.1 問題 299
3.9.2 解決方案 299
3.9.3 實現機製 299
3.10 發送短信 300
3.10.1 問題 300
3.10.2 解決方案 301
3.10.3 實現機製 301
3.11 藍牙通信 303
3.11.1 問題 303
3.11.2 解決方案 303
3.11.3 實現機製 303
3.12 查詢網絡連接狀態 312
3.12.1 問題 312
3.12.2 解決方案 312
3.12.3 實現機製 312
3.13 使用NFC傳輸數據 314
3.13.1 問題 314
3.13.2 解決方案 314
3.13.3 實現機製 314
3.14 USB連接 321
3.14.1 問題 321
3.14.2 解決方案 321
3.14.3 實現機製 322
3.15 小結 330
第4章 實現設備硬件交互與媒體交互 331
4.1 整閤設備位置 331
4.1.1 問題 331
4.1.2 解決方案 331
4.1.3 實現機製 332
4.2 地圖位置 335
4.2.1 問題 335
4.2.2 解決方案 335
4.2.3 實現機製 336
4.3 在地圖上標記位置 339
4.3.1 問題 339
4.3.2 解決方案 339
4.3.3 實現機製 339
4.4 拍攝照片和視頻 344
4.4.1 問題 344
4.4.2 解決方案 344
4.4.3 實現機製 344
4.5 自定義攝像頭覆蓋層 349
4.5.1 問題 349
4.5.2 解決方案 349
4.5.3 實現機製 349
4.6 錄製音頻 356
4.6.1 問題 356
4.6.2 解決方案 356
4.6.3 實現機製 356
4.7 自定義視頻采集 358
4.7.1 問題 358
4.7.2 解決方案 358
4.7.3 實現機製 358
輸齣格式方嚮 362
4.8 添加語音識彆 362
4.8.1 問題 362
4.8.2 解決方案 362
4.8.3 實現機製 363
4.9 播放音頻/視頻 365
4.9.1 問題 365
4.9.2 解決方案 365
4.9.3 實現機製 365
4.10 播放音效 373
4.10.1 問題 373
4.10.2 解決方案 373
4.10.3 實現機製 373
4.11 創建傾斜監控器 376
4.11.1 問題 376
4.11.2 解決方案 376
4.11.3 實現機製 376
4.12 監控羅盤的方嚮 379
4.12.1 問題 379
4.12.2 解決方案 379
4.12.3 實現機製 380
4.13 在媒體內容中獲取元數據 383
4.13.1 問題 383
4.13.2 解決方案 383
4.13.3 實現機製 383
4.14 實用工具推薦:
Sensor Simulator 386
4.15 獲得Sensor Simulator 387
4.16 啓動Sensor Simulator Settings和Sensor Simulator 387
4.17 在自己的應用程序中訪問Sensor Simulator 391
4.18 小結 392
......
歡迎閱讀《Android 開發範例代碼大全(第2版)》!
如果你正在閱讀本書,那麼移動設備給軟件開發人員和用戶帶來的無限機遇就不用我在此贅述瞭。近年來,Android已經成為最主要的移動平颱之一。對於開發人員而言,必須要瞭解Android纔能確保自己跟得上市場的變化,從而把握各種潛在的機會。但是任何新平颱在常見需求的開發和常見問題的解決方案上都會有不確定性。
我們撰寫本書旨在幫助開發人員解決實際開發中的問題,通過直觀的例子告訴讀者如何編寫Android平颱上的應用程序。本書不會很深入地介紹Android SDK、NDK或是其他工具。我們不會讓隱藏其中的各種瑣碎細節和高深理論打擊讀者的積極性。但這不意味著這些細節沒意思或是不重要。讀者應該研究這些細節,以避免在開發中犯下錯誤。但在解決迫在眉睫的問題時,這些東西通常隻會讓人分心。
本書不會講解Java編程,也不會介紹如何構建Android應用程序。本書略去瞭很多基礎知識(例如,如何使用TextView顯示文本),因為我們覺得這些知識在學過之後就不會遺忘。相反,本書會幫助開發人員解決很多實際開發中經常要完成的任務,而這些復雜的任務不是寥寥幾行代碼就能完成的,自然也很難記住。
讀者可以把本書當作一本可供隨時查詢的參考書、一本資源豐富的示例手冊,隨時都可以從中找到有助於高效完成工作的實用建議。
本書主要內容
盡管本書並不是針對新手的Android開發教程,但我們還是在第1章中概述瞭理解全書所需的Android基礎知識。其中包括瞭fragment和資源的相關知識。第1章還介紹瞭一個很重要的應用程序Univerter,展示瞭如何準備環境從而開發Univerter和其他Android應用程序。具體來說,就是如何安裝Android SDK、Eclipse、ADT插件以及如何通過它們構建Univerter。
隨著Android開發經驗的增長,為瞭節約時間,肯定要盡力避免重新發明輪子。開發人員應該創建和使用自己的可重用代碼庫,或者使用其他人開發的庫。第7章會說明如何創建和使用自定義的Jar形式的代碼庫和Android庫項目。除瞭創建自己的庫,還介紹瞭兩個Android SDK以外的Java庫供應用程序使用。同樣,將學習使用Google的支持庫以及GridLayout類。
如果想開發成功的應用程序,性能問題是不可忽視的。大部分時候,這都不是問題,因為Android(從2.2版開始)的Dalvik虛擬機有一個Just-In-Time的編譯器,能將Dalvik字節碼編譯成設備的本地代碼。如果這還不夠,還可以利用Android的NDK進一步提升性能。第8章詳述瞭NDK,並用一個OpenGL示例演示瞭它的用途。
NDK是一種比較復雜的技術,需要使用冗長的Java Native Interface (JNI),當應用程序過多地使用JNI調用時會影響到性能(以及應用程序本地部分的可移植性)。同樣,當想要使用多個CPU內核時也需要做很多工作。幸運的是,Google通過引入Renderscript已經消除瞭這種冗長編碼並簡化瞭多核執行任務,並實現瞭可移植性。第8章介紹瞭Renderscript並演示瞭如何使用它的計算引擎(並自動使用CPU的多核)來處理圖片。
在其他幾章中,我們會深入講解如何用Android SDK解決各種實際問題。你將學習如何高效地創建能運行在各種設備上的用戶界麵。你將會成為整閤各種硬件(收音機、傳感器和攝像頭)的專傢,正是這些硬件讓移動設備成為一個獨具特色的平颱。我們甚至還會討論如何自行定製這個係統,集成Google提供的各種服務和應用程序,並兼容各個設備製造商的産品。以此為目標,我們還會推薦一些由Google和社區開發的工具,用於簡化應用程序的開發和測試。
你對腳本語言(例如Python或Ruby)感興趣嗎?如果感興趣的話,你應該讀一讀附錄A,其中涵蓋瞭Scripting Layer for Android。這個特彆的應用程序可以支持在Android 上安裝腳本語言解釋器,在設備上編寫腳本並運行,以提高開發速度。
為瞭快速瞭解Android眾多工具的詳細使用方法,附錄B提供瞭各個支持工具的概述。其中,你會瞭解Android 4.1的systrace工具為什麼不能運行在Android模擬器上。
在創建應用程序時,需要確保應用程序的性能好、響應速度快、且能與係統無縫銜接。低能耗、響應快、不會彈齣Application Not Responding (ANR,應用程序沒有響應)窗口,且跟整個係統無縫銜接的應用程序纔能讓用戶滿意。此外,在將應用程序發布到Google的Google Play時,不能讓不兼容的設備看到應用程序。應該要求Google Play過濾掉那些設備不兼容的用戶,使之無法下載(甚至無法看到)你的應用程序。本書的附錄C會指導你創建高性能、響應快而且與係統無縫銜接的應用程序,以及利用過濾功能隻允許設備兼容的用戶(從Google Play)下載該應用程序。
第1章介紹瞭Univerter應用程序。本書最後的附錄D會讓你更加詳細地瞭解Univerter的架構。
注意API級彆
在本書中,讀者會看到絕大部分的解決方案都有相應的最低API級彆要求。本書中的大部分解決方案都隻需要API Level 1,換言之就是這些代碼能在Android 1.0以上的任何設備上運行。但是,有些地方也用到瞭較新版本中引入的API。注意各個範例的API級彆,確保代碼與應用程序要支持的Android版本相匹配。
這本《移動開發經典叢書·Android開發範例代碼大全(第2版)》絕對是我近年來在Android開發領域遇到的最實用的寶藏。作為一名有著幾年開發經驗的開發者,我一直在尋找能夠快速解決實際問題、提供高質量參考代碼的資源,而這本書恰恰滿足瞭我的需求,甚至超齣瞭我的預期。它並非那種堆砌大量理論卻忽略實踐的書籍,而是直擊痛點,將Android開發中常見的、復雜的、甚至是一些晦澀難懂的功能,通過精心設計的範例代碼一一呈現。我尤其喜歡的是書中對不同開發場景的覆蓋,從基礎的UI布局、數據存儲,到更高級的網絡通信、多媒體處理,再到一些新興的、例如Jetpack組件的應用,幾乎涵蓋瞭我們日常開發中可能遇到的方方麵麵。翻閱這本書,就像擁有瞭一位經驗豐富的導師,在你遇到瓶頸時,總能找到一條清晰的解決路徑。代碼的質量非常高,不僅可運行,而且結構清晰,注釋詳盡,這對於學習和理解至關重要。我曾經花費大量時間去查閱官方文檔或者在Stack Overflow上大海撈針,而這本書的齣現,極大地提高瞭我的開發效率,讓我能夠更專注於業務邏輯的實現,而不是糾結於零碎的技術細節。對於初學者來說,這本書更是不可多得的學習材料,它提供瞭一個非常好的起點,能夠幫助他們快速掌握Android開發的核心概念和實踐技巧,避免走彎路。
評分對於我這個已經摸爬滾打 Android 開發好些年的人來說,市麵上大多數“範例大全”式的書籍,要麼就是代碼陳舊,要麼就是過於簡單,缺乏深度。但《移動開發經典叢書·Android開發範例代碼大全(第2版)》真的給瞭我驚喜。這本書的更新速度相當及時,這一點非常重要,因為 Android 的生態係統變化太快瞭,很多老的 API 已經被棄用,新的框架層齣不窮。這本書的內容讓我看到瞭作者團隊在技術更新上的努力,很多章節都緊跟最新的 Android 開發趨勢,比如對 Kotlin 的深度整閤,以及對 Jetpack 生態的全麵覆蓋。我之前在實際項目中遇到過一些棘手的性能優化問題,還有一些關於後颱服務和生命周期管理的睏惑,通過翻閱這本書中的相關章節,我找到瞭非常實用且可藉鑒的解決方案。代碼的編寫風格也值得稱贊,它不僅僅是簡單的“能跑就行”,而是遵循瞭良好的編碼規範,易於理解和維護。對於我這種需要不斷吸收新知識、解決實際難題的開發者而言,這本書就像一本“秘籍”,每次遇到問題,都能從中找到靈感和指導。而且,它不像有些書那樣,隻給一個孤立的代碼片段,而是會解釋代碼背後的原理和適用場景,這對於加深理解、舉一反三非常有幫助。
評分我一直在尋找一本能夠係統性地提升我的Android開發技能的書籍,並且能夠幫助我解決開發過程中遇到的實際問題。《移動開發經典叢書·Android開發範例代碼大全(第2版)》這本書,完全超齣瞭我的預期,它不僅僅是一本代碼集,更是一份寶貴的開發指南。我尤其欣賞的是書中對各種復雜場景的細緻拆解,比如在處理網絡請求時,它不僅提供瞭基礎的實現方式,還深入探討瞭錯誤處理、數據解析、以及性能優化等關鍵環節,這些都是在實際開發中經常會遇到的挑戰。我曾經在項目中嘗試實現一個能夠支持離綫緩存的復雜數據同步功能,花費瞭大量時間研究各種可能的方案,而這本書中的相關章節,提供瞭一個非常清晰且優雅的實現思路,讓我茅塞頓開。書中的代碼不僅可復製粘貼,而且具有很強的可讀性和可擴展性,這使得我能夠更容易地將其集成到我自己的項目中,並在此基礎上進行二次開發。對於任何想要在Android開發領域深入鑽研的開發者來說,這本書都絕對是必備的參考資料。它不僅能夠幫助你解決眼前的問題,更能幫助你建立起紮實的開發功底,提升你對Android平颱的理解深度。
評分作為一名從Android早期版本就開始接觸開發的開發者,我已經見證瞭這個平颱的大浪淘沙。《移動開發經典叢書·Android開發範例代碼大全(第2版)》這本書,給我最大的感受是“有料”且“實用”。它不像某些書籍那樣,僅僅羅列一些過時的、不具備實際參考價值的代碼片段,而是真正抓住瞭Android開發的核心和痛點。我注意到書中有不少章節專門講解瞭與性能優化相關的範例,比如如何在UI渲染、內存管理、以及多綫程操作等方麵做齣改進,這些內容對於提升應用的流暢度和用戶體驗至關重要,也是很多開發者容易忽略但又極其關鍵的方麵。在實際項目中,我經常會遇到一些與係統API交互相關的復雜問題,有時候需要花費大量時間去查閱文檔,甚至進行大量的試錯。而這本書就像一個“智能助手”,為我提供瞭許多可以直接套用的、經過驗證的代碼範例,並且對代碼的實現邏輯進行瞭深入的剖析,讓我不僅知其然,更知其所以然。它的內容結構清晰,從基礎到進階,循序漸進,對於任何水平的Android開發者來說,都能從中受益匪淺。
評分這本書的齣現,簡直就像是在我苦苦摸索Android開發的過程中,突然亮起的一盞明燈。《移動開發叢書·Android開發範例代碼大全(第2版)》這本書,讓我找到瞭許多在實際開發中亟需解決的問題的答案。我特彆喜歡書中對某些“疑難雜癥”的深入講解,比如關於後颱任務的調度、界麵的復雜動畫實現、以及與其他應用的數據交互等。這些都是在日常開發中非常常見但又容易讓人頭疼的問題,而這本書提供的範例代碼,不僅能夠直接解決問題,而且質量極高,結構清晰,注釋到位,讓我能夠快速理解和應用。我曾經在項目中遇到一個與權限管理相關的復雜場景,需要處理不同版本Android係統下的權限適配問題,為此花費瞭大量的時間去查閱資料,最終在這個書中找到瞭一個非常完善且具有指導意義的解決方案,讓我節省瞭寶貴的時間。這本書的價值在於,它不僅僅提供瞭一堆可以運行的代碼,更重要的是,它分享瞭作者團隊在實際開發中的經驗和智慧,幫助開發者們少走彎路,提高開發效率。對於任何一個希望在這個日新月異的Android開發領域不斷進步的開發者來說,這本書都是一本不容錯過的寶藏。
評分非常好的一本書,適閤新手入門,結閤Android編程入門
評分這本書很好,對Android studio和idea講解得很清楚。
評分京東送貨一如既往的快,正是我想要的書,雖然摺扣不多,但是快捷方便。
評分很使用!!!!!!!!!!!!!!!!!!!!!!!!
評分好。。。。。。。。。。。。。
評分好好學習,天天嚮上!!!
評分本來以為是大磚頭,沒想到齣人意料的薄~
評分東西到啦挺好的,質量很不錯???
評分學習NDK,加油加油!
本站所有內容均為互聯網搜尋引擎提供的公開搜索信息,本站不存儲任何數據與內容,任何內容與數據均與本站無關,如有需要請聯繫相關搜索引擎包括但不限於百度,google,bing,sogou 等
© 2025 book.coffeedeals.club All Rights Reserved. 靜流書站 版權所有