關(guān)于我們
書單推薦
新書推薦
|
Android移動應(yīng)用基礎(chǔ)教程(Android Studio)(第2版)
本書以Android Studio為開發(fā)工具,詳細(xì)全面地介紹了Android編程的核心技術(shù),包括Android用戶界面編程、Android四大組件、數(shù)據(jù)存儲、 事件處理、網(wǎng)絡(luò)與數(shù)據(jù)處理、圖形圖像處理、多媒體開發(fā)等知識。本書不限于介紹Android理論知識,而是從案例驅(qū)動的角度講解理論。本書每章提供了大量實例,這些示范性的實例可幫助讀者深刻理解知識點,除此之外,本書還精心設(shè)計了兩個階段案例和一個綜合案例,這些案例貼合實際工作需求,能夠使讀者真正把書本中的知識應(yīng)用到實際開發(fā)中。本書附有配套視頻、源代碼、習(xí)題、教學(xué)課件等教學(xué)資源,同時為了幫助初學(xué)者更好地學(xué)習(xí)本書中的內(nèi)容,還提供了在線答疑,希望能夠得到更多讀者的關(guān)注。本書既可作為高等院校本、專科計算機(jī)相關(guān)專業(yè)的“移動互聯(lián)網(wǎng)”課程專用教材,也可以作為Android移動開發(fā)的培訓(xùn)教材,是一本非常適合Android零基礎(chǔ)讀者的圖書。
本書是一本Android入門書籍,采用案例驅(qū)動式教學(xué),通過50余個案例來講解Android基礎(chǔ)知識在開發(fā)中的運用。zui后一章講解一個網(wǎng)上訂餐項目,該項目總結(jié)了1~14章的知識點,在網(wǎng)上訂餐項目的實現(xiàn)過程中使用了異步線程訪問網(wǎng)絡(luò)、Tomcat服務(wù)器、Handler消息通信、JSON解析等知識,這些知識點在后來開發(fā)項目中是必須要使用的,因此希望讀者認(rèn)真分析每個模塊的邏輯流程,并按照步驟完成項目。
Android是Google公司開發(fā)的基于Linux的開源操作系統(tǒng),主要應(yīng)用于智能手機(jī)、平板電腦等移動設(shè)備。經(jīng)過短短幾年的發(fā)展,Android系統(tǒng)在全球得到了大規(guī)模推廣,除智能手機(jī)和平板電腦外,還可用于穿戴設(shè)備、智能家具等領(lǐng)域。本書是在第一版《Android移動應(yīng)用基礎(chǔ)教程》的基礎(chǔ)上修訂而成的,主要做了以下改進(jìn):(1)全新的Android Studio開發(fā)工具,與真實開發(fā)環(huán)境保持一致。(2)新增了RecyclerView控件的使用、自定義View、Android事件的處理、手勢的創(chuàng)建與識別等更實用的知識模塊。(3)新增了兩個階段案例和一個綜合案例,更有利于知識的鞏固學(xué)習(xí)。如何使用本書本書是一本Android入門書籍,采用案例驅(qū)動式教學(xué),通過50余個案例來講解Android基礎(chǔ)知識在開發(fā)中的運用。在學(xué)習(xí)本書之前,一定要具備Java基礎(chǔ)知識,眾所周知,Android開發(fā)使用的是Java語言。初學(xué)者在使用本書時,建議從頭開始循序漸進(jìn)地學(xué)習(xí),并且反復(fù)練習(xí)書中的案例,以達(dá)到熟能生巧、為我所用的目的。如果是有基礎(chǔ)的編程人員,則可以選擇感興趣的章節(jié)跳躍式地學(xué)習(xí),不過書中的案例zui好動手實踐一下。如果在學(xué)習(xí)過程中遇到障礙,可以先回到前面的相關(guān)章節(jié)重新學(xué)習(xí),然后依照關(guān)聯(lián)性繼續(xù)學(xué)習(xí)后續(xù)章節(jié),依照這種方式學(xué)習(xí)能夠讓本書發(fā)揮zui大的作用。本書共分為15章,簡單介紹如下:?第1~3章主要講解Android的基礎(chǔ)知識,包括Android起源、Android體系結(jié)構(gòu)、開發(fā)環(huán)境搭建、JUnit單元測試、常見界面布局、常見界面控件等。通過這3章的學(xué)習(xí),初學(xué)者可以創(chuàng)建簡單的布局界面。?第4章主要講解Activity與Fragment,包括生命周期、創(chuàng)建、使用等。通過本章的學(xué)習(xí),初學(xué)者可以完成簡單的界面交互操作,并且實現(xiàn)相應(yīng)的點擊事件。第5章主要講解Android中的數(shù)據(jù)存儲,包括文件存儲、SharedPreferences、SQLite數(shù)據(jù)庫等知識,并提供保存QQ賬號與密碼、綠豆通訊錄等實際開發(fā)中的案例。本章的知識非常重要,幾乎每個Android程序都會涉及數(shù)據(jù)存儲,因此要求初學(xué)者一定要熟練掌握這部分內(nèi)容。?第6章主要講解一個記事本項目,該項目總結(jié)了前面1~5章的知識點。在記事本項目的實現(xiàn)過程中熟悉了ListView控件的使用、數(shù)據(jù)庫的相關(guān)操作、Activity的跳轉(zhuǎn)以及數(shù)據(jù)回傳等知識點,這些知識點在Android項目中會經(jīng)常使用,因此要求大家能夠熟練掌握本章內(nèi)容,方便后續(xù)開發(fā)其他項目。?第7~9章主要講解Android中的三個組件,分別是內(nèi)容提供者、廣播接收者以及服務(wù),包括內(nèi)容提供者的創(chuàng)建、訪問其他應(yīng)用程序、內(nèi)容觀察者、廣播的創(chuàng)建、發(fā)送與接收、服務(wù)的創(chuàng)建、生命周期,并講解了音樂播放器等案例。通過這三章的學(xué)習(xí),初學(xué)者可以使用內(nèi)容提供者、服務(wù)以及廣播開發(fā)后臺程序。?第10章主要講解Android事件處理,包括基于回調(diào)機(jī)制的事件處理、基于監(jiān)聽接口機(jī)制的事件處理、手勢以及Handler消息機(jī)制等知識,通過對本章的學(xué)習(xí),可以掌握Android中常見的事件處理的知識。?第11章主要講解Android中的網(wǎng)絡(luò)編程,包括HTTP協(xié)議、HttpURLConnection訪問網(wǎng)絡(luò)、數(shù)據(jù)提交方式、使用WebView進(jìn)行網(wǎng)絡(luò)開發(fā)以及JSON解析等知識,并提供了天氣預(yù)報等案例。通過本章的學(xué)習(xí),初學(xué)者可以完成網(wǎng)絡(luò)請求的過程,并解析獲取的JSON數(shù)據(jù)等。?第12章主要講解一個智能聊天機(jī)器人項目,該項目總結(jié)了7~11章的知識點,在智能聊天機(jī)器人項目的實現(xiàn)過程中熟悉了網(wǎng)絡(luò)請求、JSON解析、Handler處理等知識點,這些知識點會在后來的Android項目中經(jīng)常使用,因此要求初學(xué)者熟練掌握本章內(nèi)容。?第13~14章主要講解Android中的圖形圖像處理和多媒體應(yīng)用開發(fā)的相關(guān)知識,包括繪圖、動畫、為圖像添加特效、音頻與視頻的播放等知識,通過這兩章的學(xué)習(xí),初學(xué)者可以掌握視頻播放器、音樂播放器、動畫以及圖像特效的開發(fā)原理。?第15章主要講解一個網(wǎng)上訂餐項目,該項目總結(jié)了1~14章的知識點,在網(wǎng)上訂餐項目的實現(xiàn)過程中使用了異步線程訪問網(wǎng)絡(luò)、Tomcat服務(wù)器、Handler消息通信、JSON解析等知識,這些知識點在后來開發(fā)項目中是必須要使用的,因此希望讀者認(rèn)真分析每個模塊的邏輯流程,并按照步驟完成項目。致謝本書的編寫和整理工作由傳智播客教育科技有限公司完成,主要參與人員有呂春林、高美云、柴永菲、閆文華等,研發(fā)小組全體成員在這近一年的編寫過程中付出了很多辛勤的汗水,在此一并表示衷心的感謝。意見反饋盡管我們盡了zui大的努力,但書中難免會有不妥之處,歡迎各界專家和讀者朋友們來信給予寶貴意見,我們將不勝感激。您在閱讀本書時,如發(fā)現(xiàn)任何問題或有不認(rèn)同之處,可以通過電子郵件與我們?nèi)〉寐?lián)系。請發(fā)送電子郵件至:itcast_book@vip.sina.com。黑馬程序員2018年12月于北京
“黑馬程序員”是江蘇傳智播客教育科技股份有限公司(簡稱傳智播客)旗下高端IT教育品牌。傳智播客是一家專門致力于高素質(zhì)軟件開發(fā)人才培養(yǎng)的高科技公司。
第 1 章 Android基礎(chǔ)入門 11.1 Android簡介 11.1.1 通信技術(shù) 11.1.2 Android發(fā)展歷史 21.1.3 Android體系結(jié)構(gòu) 31.1.4 Dalvik虛擬機(jī) 51.2 Android開發(fā)環(huán)境搭建 51.2.1 Android Studio安裝 61.2.2 模擬器創(chuàng)建 121.2.3 在Android Studio中下載SDK 161.3 開發(fā)第一個Android程序 191.4 Android程序結(jié)構(gòu) 221.5 資源的管理與使用 231.5.1 圖片資源 231.5.2 主題和樣式資源 231.5.3 布局資源 241.5.4 字符串資源 251.5.5 顏色資源 251.5.6 尺寸資源 261.6 程序調(diào)試 281.6.1 單元測試 281.6.2 LogCat的使用 30本章小結(jié) 33本章習(xí)題 33第 2 章 Android常見界面布局 352.1 View視圖 352.2 界面布局編寫方式 362.2.1 在XML文件中編寫布局 362.2.2 在Java代碼中編寫布局 362.3 常見界面布局 372.3.1 布局的通用屬性 372.3.2 RelativeLayout相對布局 382.3.3 LinearLayout線性布局 402.3.4 FrameLayout幀布局 432.3.6 ConstraintLayout約束布局 44本章小結(jié) 46本章習(xí)題 47第 3 章 Android常見界面控件 483.1 簡單控件的使用 48 3.1.1 TextView 48 3.1.2 Button 50 3.1.3 EditText 53 3.1.4 ImageView .54 3.1.5 RadioButton .55 3.1.6 CheckBox 57 3.1.7 Toast .603.2 AlertDialog對話框的使用 60 3.2.1 AlertDialog對話框概述 60 3.2.2 普通對話框 .61 3.2.3 單選對話框 .62 3.2.4 多選對話框 .65 3.2.5 自定義對話框 .683.3 ListView的使用 73 3.3.1 ListView控件的簡單使用 .74 3.3.2 常用數(shù)據(jù)適配器 (Adapter) 74 3.3.3 案例——Android購物 商城 .75 3.4 RecyclerView的使用 78 3.5 自定義View 82 本章小結(jié) .85 本章習(xí)題 .85第 4 章 程序活動單元Activity .87 4.1 Activity的生命周期 87 4.1.1 生命周期狀態(tài) .87 4.1.2 生命周期方法 .88 4.2 Activity的創(chuàng)建、配置、開啟 和關(guān)閉 .90 4.2.1 創(chuàng)建Activity 90 4.2.2 配置Activity 92 4.2.3 開啟和關(guān)閉Activity 92 4.3 Intent與IntentFilter .93 4.3.1 Intent 93 4.3.2 IntentFilter .94 4.4 Activity之間的跳轉(zhuǎn) 95 4.4.1 在Activity之間數(shù)據(jù) 傳遞 .95 4.4.2 Activity之間的數(shù)據(jù) 回傳 .96 4.5 Activity的任務(wù)棧和啟動模式 98 4.5.1 Android中的任務(wù)棧 .98 4.5.2 Activity的啟動模式 984.6 使用Fragment .100 4.6.1 Fragment簡介 100 4.6.2 Fragment的生命周期 101 4.6.3 創(chuàng)建Fragment 101 4.6.4 在Activity中添加 Fragment 102 4.6.5 案例——川菜菜譜 .103 本章小結(jié) .108 本章習(xí)題 .109 第 5 章 數(shù)據(jù)存儲 .110 5.1 數(shù)據(jù)存儲方式 110 5.2 文件存儲 111 5.2.1 將數(shù)據(jù)存入文件中 . 111 5.2.2 從文件中讀取數(shù)據(jù) . 113 5.2.3 實戰(zhàn)演練——保存QQ賬號 與密碼 115 5.3 SharedPreferences存儲 . 119 5.3.1 將數(shù)據(jù)存入 SharedPreferences中 119 5.3.2 讀取與刪除SharedPreferences 中的數(shù)據(jù) . 119 5.3.3 實戰(zhàn)演練——保存QQ賬號 和密碼 120 5.4 SQLite數(shù)據(jù)庫存儲 .122 5.4.1 SQLite數(shù)據(jù)庫的創(chuàng)建 122 5.4.2 SQLite數(shù)據(jù)庫的基本 操作 .124 5.4.3 SQLite數(shù)據(jù)庫中的事務(wù) 126 5.4.4 實戰(zhàn)演練——綠豆 通訊錄 .127 本章小結(jié) .130本章習(xí)題 .131 第 6 章 階段案例——記事本 .133 6.1 需求分析 133 6.1.1 業(yè)務(wù)需求分析 .133 6.1.2 架構(gòu)分析 .133 6.1.3 數(shù)據(jù)庫類設(shè)計分析 .134 6.1.4 界面需求分析 .134 6.2 開發(fā)環(huán)境介紹 135 6.3 記事本功能業(yè)務(wù)實現(xiàn) 135 6.3.1 搭建記事本界面布局 .135 6.3.2 搭建記事本界面Item 布局 .135 6.3.3 封裝記錄信息實體類 .136 6.3.4 編寫記事本界面列表 適配器 .136 6.3.5 創(chuàng)建數(shù)據(jù)庫 .138 6.3.6 實現(xiàn)記事本界面的顯示 功能 .140 6.3.7 搭建添加記錄界面和修改 記錄界面的布局 .141 6.3.8 實現(xiàn)添加記錄界面的 功能 .142 6.3.9 實現(xiàn)修改記錄界面的 功能 .143 6.3.10 刪除記事本中的記錄 .145 6.3.11 運行結(jié)果 .146 本章小結(jié) .147 第 7 章 使用內(nèi)容提供者共享數(shù)據(jù) 148 7.1 內(nèi)容提供者概述 148 7.2 創(chuàng)建內(nèi)容提供者 149 7.3 訪問其他應(yīng)用程序 1517.3.1 查詢其他程序的數(shù)據(jù) .151 7.3.2 實戰(zhàn)演練——查看系統(tǒng) 短信 .153 7.4 內(nèi)容觀察者 158 7.4.1 什么是內(nèi)容觀察者 .158 7.4.2 實戰(zhàn)演練——監(jiān)測數(shù)據(jù) 變化 .160 本章小結(jié) .168 本章習(xí)題 .168 第 8 章 廣播機(jī)制 .170 8.1 廣播機(jī)制概述 170 8.2 廣播接收者 171 8.2.1 什么是廣播接收者 .171 8.2.2 廣播接收者的創(chuàng)建 .172 8.3 自定義廣播與廣播的類型 174 8.3.1 自定義廣播 .174 8.3.2 實戰(zhàn)演練——發(fā)送求救 廣播 .174 8.3.3 廣播的類型 .176 8.3.4 實戰(zhàn)演練——發(fā)送有序 廣播 .177 本章小結(jié) .181 本章習(xí)題 .181 第 9 章 服務(wù) .183 9.1 服務(wù)概述 183 9.2 服務(wù)的創(chuàng)建 184 9.3 服務(wù)的生命周期 185 9.4 服務(wù)的啟動方式 186 9.4.1 調(diào)用startService()方法 啟動服務(wù) .186第 10 章 Android事件處理 .202 10.1 事件處理概述 202 10.2 基于回調(diào)機(jī)制的事件處理 203 10.2.1 基于回調(diào)機(jī)制的事件 處理簡介 .203 10.2.2 onKeyDown()方法 203 10.2.3 onKeyUp()方法 .206 10.2.4 onTouchEvent()方法 .206 10.2.5 onFocusChanged() 方法 208 10.3 基于監(jiān)聽接口機(jī)制的事件 處理 209 10.3.1 基于監(jiān)聽接口機(jī)制的 事件處理簡介 .209 10.3.2 OnClickListener接口 .210 10.3.3 OnLongClickListener 接口 .212 10.3.4 OnFocusChangeListener 接口 .213 10.3.5 OnKeyListener接口 .215 10.3.6 OnTouchListener接口 .217 10.4 手勢 21710.4.1 手勢簡介 .218 10.4.2 手勢檢測 .218 10.4.3 使用GestureLibrary類 添加手勢 .219 10.4.4 使用Gestures Builder 軟件添加手勢 .223 10.4.5 手勢識別 .225 10.5 Handler消息機(jī)制 227 本章小結(jié) .229 本章習(xí)題 .229 第 11 章 網(wǎng)絡(luò)編程 230 11.1 通過HTTP訪問網(wǎng)絡(luò) .230 11.1.1 HTTP協(xié)議通信簡介 .230 11.1.2 使用HttpURLConnection 訪問網(wǎng)絡(luò) .231 11.2 使用WebView進(jìn)行網(wǎng)絡(luò)開發(fā) .232 11.2.1 使用WebView瀏覽 網(wǎng)頁 .233 11.2.2 使用WebView執(zhí)行 HTML代碼 234 11.2.3 設(shè)置WebView支持 JavaScript 235 11.3 JSON數(shù)據(jù)解析 .238 11.3.1 JSON數(shù)據(jù) 238 11.3.2 JSON解析 240 11.3.3 實戰(zhàn)演練——天氣 預(yù)報 .243 本章小結(jié) .251 本章習(xí)題 .251第 12 章 階段案例——智能聊天 機(jī)器人 .253 12.1 需求分析 253 12.1.1 業(yè)務(wù)需求分析 .253 12.1.2 模型需求分析 .253 12.1.3 界面需求分析 .254 12.2 開發(fā)環(huán)境介紹 254 12.3 聊天功能業(yè)務(wù)實現(xiàn) 255 12.3.1 申請機(jī)器人身份標(biāo)識 .255 12.3.2 搭建聊天界面布局 .256 12.3.3 搭建聊天條目布局 .258 12.3.4 封裝聊天信息實體類 .259 12.3.5 編寫聊天列表適配器 .260 12.3.6 實現(xiàn)智能機(jī)器人通信 .261 本章小結(jié) .266 第 13 章 圖形圖像處理 267 13.1 常用的繪圖類 267 13.1.1 Bitmap類 267 13.1.2 BitmapFactory類 .268 13.1.3 Paint類 .268 13.1.4 Canvas類 269 13.2 為圖像添加特效 269 13.3 動畫 272 13.3.1 補(bǔ)間動畫 .272 13.3.2 逐幀動畫 .278 本章小結(jié) .281 本章習(xí)題 .281 第 14 章 多媒體應(yīng)用開發(fā) .282 14.1 音頻的播放 .28214.1.1 MediaPlayer類播放 音頻 .282 14.1.2 SoundPool類播放 音頻 .284 14.1.3 案例——彈鋼琴 286 14.2 視頻播放 289 14.2.1 VideoView控件播放 視頻 .289 14.2.2 案例——VideoView視頻 播放器 .290 14.2.3 MediaPlayer類和 SurfaceView控件播放視頻 292 14.2.4 案例——SurfaceView視頻 播放器 .293 本章小結(jié) .299 本章習(xí)題 .299 第 15 章 綜合項目——網(wǎng)上訂餐 .300 15.1 項目分析 300 15.1.1 項目概述 .300 15.1.2 開發(fā)環(huán)境 .300 15.1.3 模塊說明 .301 15.2 效果展示 301 15.3 服務(wù)器數(shù)據(jù)準(zhǔn)備 303 15.4 店鋪功能業(yè)務(wù)實現(xiàn) 305 15.4.1 搭建標(biāo)題欄布局 .305 15.4.2 搭建店鋪界面布局 .306 15.4.3 搭建店鋪Item布局 307 15.4.4 封裝店鋪信息實體類 .30815.4.5 編寫店鋪列表適配器 . 311 15.4.6 實現(xiàn)店鋪界面顯示功能 .313 15.5 店鋪詳情功能業(yè)務(wù)實現(xiàn) .317 15.5.1 搭建店鋪詳情界面 布局 .317 15.5.2 搭建菜單Item布局 320 15.5.3 搭建購物車Item布局 321 15.5.4 搭建確認(rèn)清空購物車界面布局 .322 15.5.5 編寫菜單列表適配器 .323 15.5.6 編寫購物車列表適配器 .326 15.5.7 實現(xiàn)菜單顯示與購物車功能 .328 15.6 菜品詳情功能業(yè)務(wù)實現(xiàn) 336 15.6.1 搭建菜品詳情界面布局 .336 15.6.2 實現(xiàn)菜品界面顯示功能 .337 15.7 訂單功能業(yè)務(wù)實現(xiàn) 338 15.7.1 搭建訂單界面布局 .338 15.7.2 搭建訂單Item布局 .339 15.7.3 搭建支付界面布局 .340 15.7.4 搭建訂單列表適配器 .340 15.7.5 實現(xiàn)訂單顯示與支付功能 .342 本章小結(jié) 344
你還可能感興趣
我要評論
|