Android開(kāi)發(fā)工程師案例教程(Kotlin版)
定 價(jià):88 元
叢書(shū)名:高等院校計(jì)算機(jī)類(lèi)專(zhuān)業(yè)"互聯(lián)網(wǎng)+"創(chuàng)新規(guī)劃教材
- 作者:倪紅軍 編著
- 出版時(shí)間:2024/1/1
- ISBN:9787301346419
- 出 版 社:北京大學(xué)出版社
- 中圖法分類(lèi):TN929.53
- 頁(yè)碼:500
- 紙張:
- 版次:1
- 開(kāi)本:16開(kāi)
本書(shū)是一本定位于移動(dòng)應(yīng)用開(kāi)發(fā)從零基礎(chǔ)入門(mén)到綜合開(kāi)發(fā)能力提升的技術(shù)進(jìn)階類(lèi)圖書(shū)。全書(shū)采用“案例項(xiàng)目詮釋理論基礎(chǔ),理論基礎(chǔ)拓展項(xiàng)目創(chuàng)新”的編寫(xiě)理念,以一個(gè)個(gè)易學(xué)、易用、易擴(kuò)展的技術(shù)范例和有趣、經(jīng)典、綜合性的項(xiàng)目案例實(shí)現(xiàn)過(guò)程為載體,全面、系統(tǒng)地講解了基于Kotlin語(yǔ)言進(jìn)行Android應(yīng)用程序開(kāi)發(fā)的相關(guān)知識(shí),助力讀者快速成為一名合格的移動(dòng)應(yīng)用開(kāi)發(fā)工程師。為便于讀者高效學(xué)習(xí),快速掌握使用移動(dòng)應(yīng)用開(kāi)發(fā)技術(shù),本書(shū)提供完整的教學(xué)大綱、教學(xué)課件、程序源代碼和微課視頻等配套資源。本書(shū)可作為Android和HarmonyOS應(yīng)用程序開(kāi)發(fā)初學(xué)者的入門(mén)級(jí)書(shū)籍,也可作為高等學(xué)校移動(dòng)應(yīng)用開(kāi)發(fā)類(lèi)課程的教材和軟件開(kāi)發(fā)技術(shù)人員的參考書(shū)。
倪紅軍【編著】【現(xiàn)當(dāng)代】
————————————————————
倪紅軍,副教授,南京師范大學(xué)泰州學(xué)院,碩士研究生導(dǎo)師,開(kāi)放原子教育銀牌認(rèn)證講師,主要從事移動(dòng)應(yīng)用開(kāi)發(fā)技術(shù)、課程建設(shè)和教學(xué)改革研究。
“移動(dòng)終端應(yīng)用開(kāi)發(fā)”課程獲江蘇省高校在線(xiàn)開(kāi)放課程立項(xiàng)建設(shè),主編出版《Android開(kāi)發(fā)工程師案例教程(第2版)》《移動(dòng)Web綜合開(kāi)發(fā)》《微信小程序案例開(kāi)發(fā)》《跨平臺(tái)移動(dòng)應(yīng)用開(kāi)發(fā)——Flutter實(shí)踐》《 Flutter開(kāi)發(fā)零基礎(chǔ)入門(mén)(微課版) 》等教材。善于用“案例詮釋理論內(nèi)涵,項(xiàng)目推動(dòng)實(shí)踐創(chuàng)新”的模式組織教學(xué)資源和開(kāi)展教學(xué),基于“軟件工廠(chǎng)”的Android開(kāi)發(fā)工程師人才培養(yǎng)模式研究、基于翻轉(zhuǎn)課堂的Android應(yīng)用開(kāi)發(fā)課程建設(shè)獲得Google中國(guó)教育合作部好評(píng),曾兩次獲Google獎(jiǎng)教金。近年來(lái)主持教育部產(chǎn)學(xué)合作協(xié)同育人項(xiàng)目8項(xiàng)(其中Google中國(guó)教育合作部5項(xiàng),騰訊微信事業(yè)群1項(xiàng),華為終端有限公司2項(xiàng))。
目 錄
第1章 Android應(yīng)用開(kāi)發(fā)環(huán)境 1
1.1 Android的發(fā)展與現(xiàn)狀 1
1.1.1 發(fā)展 1
1.1.2 現(xiàn)狀 3
1.2 Android的基本架構(gòu) 4
1.2.1 應(yīng)用層 4
1.2.2 應(yīng)用框架層 4
1.2.3 系統(tǒng)運(yùn)行庫(kù)層 5
1.2.4 Linux內(nèi)核層 5
1.3 Android應(yīng)用開(kāi)發(fā)環(huán)境搭建 5
1.3.1 Android Studio介紹 6
1.3.2 搭建Mac OS系統(tǒng)下的開(kāi)發(fā)環(huán)境 7
1.3.3 搭建Windows系統(tǒng)下的開(kāi)發(fā)環(huán)境 17
1.4 AndroidX和Jetpack 23
本章小結(jié) 24
第2章 Android應(yīng)用程序結(jié)構(gòu) 25
2.1 剖析Android應(yīng)用程序 25
2.1.1 工程項(xiàng)目的目錄結(jié)構(gòu) 25
2.1.2 AndroidManifest.xml文件 31
2.2 Android的四大組件 32
2.2.1 Activity 32
2.2.2 BroadcastReceiver 35
2.2.3 Service 35
2.2.4 ContentProvider 36
本章小結(jié) 37
第3章 Kotlin程序設(shè)計(jì)基礎(chǔ) 38
3.1 Kotlin語(yǔ)言概述 38
3.1.1 Kotlin的發(fā)展 38
3.1.2 Kotlin的特點(diǎn) 38
3.2 基本語(yǔ)法 39
3.2.1 變量和常量 39
3.2.2 數(shù)據(jù)類(lèi)型 40
3.2.3 運(yùn)算符 48
3.2.4 標(biāo)準(zhǔn)輸入/輸出 53
3.2.5 注釋 54
3.2.6 控制流程 55
3.3 函數(shù) 66
3.3.1 標(biāo)準(zhǔn)庫(kù)函數(shù) 66
3.3.2 用戶(hù)自定義函數(shù) 66
3.3.3 Lambda函數(shù) 69
3.3.4 匿名函數(shù) 70
3.4 異常 70
3.4.1 捕獲異常 71
3.4.2 拋出異常 72
本章小結(jié) 73
第4章 Kotlin面向?qū)ο缶幊?74
4.1 類(lèi)和對(duì)象 74
4.1.1 類(lèi)的定義和使用 74
4.1.2 構(gòu)造函數(shù) 75
4.1.3 類(lèi)的繼承 78
4.1.4 覆寫(xiě) 80
4.1.5 嵌套類(lèi) 81
4.1.6 內(nèi)部類(lèi) 82
4.1.7 數(shù)據(jù)類(lèi) 82
4.2 抽象類(lèi)和接口 84
4.2.1 抽象類(lèi) 84
4.2.2 接口 85
4.3 可見(jiàn)性修飾符 88
4.3.1 包內(nèi)的可見(jiàn)性修飾符 89
4.3.2 類(lèi)和接口內(nèi)的可見(jiàn)性修飾符 89
4.4 泛型與集合 90
4.4.1 泛型類(lèi)/接口 90
4.4.2 泛型函數(shù) 92
4.4.3 泛型約束 92
4.4.4 泛型型變 93
4.4.5 集合 95
本章小結(jié) 101
第5章 界面組件與布局 102
5.1 用戶(hù)界面基礎(chǔ) 102
5.1.1 MVC設(shè)計(jì)模式 102
5.1.2 布局管理器 103
5.1.3 View和ViewGroup類(lèi) 104
5.1.4 屬性 105
5.2 計(jì)算器的設(shè)計(jì)與實(shí)現(xiàn) 107
5.2.1 TextView 107
5.2.2 Button 109
5.2.3 LinearLayout 113
5.2.4 案例:計(jì)算器的實(shí)現(xiàn) 119
5.3 仿QQ登錄界面的設(shè)計(jì)與實(shí)現(xiàn) 127
5.3.1 EditText 127
5.3.2 ImageView 130
5.3.3 ImageButton 130
5.3.4 Snackbar 134
5.3.5 RelativeLayout 138
5.3.6 案例:仿QQ登錄界面的實(shí)現(xiàn) 141
5.4 通訊錄的設(shè)計(jì)與實(shí)現(xiàn) 144
5.4.1 Adapter 144
5.4.2 ListView 145
5.4.3 Intent 151
5.4.4 IntentFilter 157
5.4.5 啟動(dòng)Activity 158
5.4.6 案例:通訊錄的實(shí)現(xiàn) 160
5.5 注冊(cè)界面的設(shè)計(jì)與實(shí)現(xiàn) 167
5.5.1 RadioButton與RadioGroup 168
5.5.2 CheckBox 170
5.5.3 Spinner 172
5.5.4 RatingBar 178
5.5.5 ScrollView 182
5.5.6 案例:注冊(cè)界面的實(shí)現(xiàn) 185
5.6 仿微信主界面的設(shè)計(jì)與實(shí)現(xiàn) 191
5.6.1 FrameLayout 191
5.6.2 Fragment 194
5.6.3 案例:仿微信主界面的實(shí)現(xiàn) 200
5.7 仿拼多多界面的設(shè)計(jì)與實(shí)現(xiàn) 205
5.7.1 TabLayout 206
5.7.2 RecyclerView 208
5.7.3 LayoutManager 212
5.7.4 ViewPager2 220
5.7.5 SearchView 224
5.7.6 案例:仿拼多多界面的實(shí)現(xiàn) 227
5.8 打地鼠游戲的設(shè)計(jì)與實(shí)現(xiàn) 230
5.8.1 GridLayout 230
5.8.2 菜單 236
5.8.3 ToolBar 242
5.8.4 異步任務(wù)與多線(xiàn)程 245
5.8.5 ProgressBar 249
5.8.6 案例:打地鼠游戲的實(shí)現(xiàn) 253
本章小結(jié) 260
第6章 數(shù)據(jù)存儲(chǔ)與訪(fǎng)問(wèn) 261
6.1 概述 261
6.1.1 數(shù)據(jù)存儲(chǔ)訪(fǎng)問(wèn)機(jī)制 261
6.1.2 Android終端設(shè)備的存儲(chǔ)器 262
6.2 備忘錄的設(shè)計(jì)與實(shí)現(xiàn) 268
6.2.1 ConstraintLayout 268
6.2.2 SharedPreferences存儲(chǔ)訪(fǎng)問(wèn)機(jī)制 273
6.2.3 文件存儲(chǔ)訪(fǎng)問(wèn)機(jī)制 276
6.2.4 對(duì)話(huà)框 284
6.2.5 案例:備忘錄的實(shí)現(xiàn) 297
6.3 實(shí)驗(yàn)室安全知識(shí)練習(xí)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) 311
6.3.1 SQLite數(shù)據(jù)庫(kù) 311
6.3.2 SQLiteDatabase 313
6.3.3 SQLiteOpenHelper 321
6.3.4 案例:實(shí)驗(yàn)室安全知識(shí)練習(xí)系統(tǒng)的實(shí)現(xiàn) 324
6.4 應(yīng)用程序間的數(shù)據(jù)共享 336
6.4.1 ContentProvider 337
6.4.2 Uri 338
6.4.3 MIME 340
6.4.4 UriMatcher和ContentUris 340
6.4.5 ContentResolver 341
6.4.6 ContentObserver 344
6.4.7 共享SharePreferences偏好數(shù)據(jù) 345
6.4.8 共享SQLite數(shù)據(jù)庫(kù)數(shù)據(jù) 347
6.4.9 使用Android系統(tǒng)提供的共享數(shù)據(jù) 355
本章小結(jié) 368
第7章 多媒體應(yīng)用開(kāi)發(fā) 369
7.1 概述 369
7.1.1 調(diào)用系統(tǒng)功能實(shí)現(xiàn)多媒體應(yīng)用開(kāi)發(fā) 369
7.1.2 使用Android提供的類(lèi)實(shí)現(xiàn)多媒體應(yīng)用開(kāi)發(fā) 372
7.2 音視頻播放器的設(shè)計(jì)與實(shí)現(xiàn) 372
7.2.1 MediaPlayer 373
7.2.2 SurfaceView 375
7.2.3 AudioManager 377
7.2.4 SeekBar 379
7.2.5 VideoView 381
7.2.6 案例:視頻播放器的實(shí)現(xiàn) 383
7.3 音視頻錄制器的設(shè)計(jì)與實(shí)現(xiàn) 388
7.3.1 CameraX 388
7.3.2 MediaRecorder 395
本章小結(jié) 398
第8章 服務(wù)和消息廣播 399
8.1 概述 399
8.1.1 Service 399
8.1.2 BroadcastReceiver 406
8.2 陌生電話(huà)監(jiān)聽(tīng)器的設(shè)計(jì)與實(shí)現(xiàn) 411
8.2.1 Notification 411
8.2.2 TelephonyManager 415
8.2.3 案例:陌生電話(huà)監(jiān)聽(tīng)器的實(shí)現(xiàn) 417
8.3 定時(shí)短信發(fā)送器的設(shè)計(jì)與實(shí)現(xiàn) 420
8.3.1 AlarmManager 421
8.3.2 DatePicker 422
8.3.3 TimePicker 423
8.3.4 SmsManager 427
8.3.5 案例:定時(shí)短信發(fā)送器的實(shí)現(xiàn) 428
本章小結(jié) 430
第9章 網(wǎng)絡(luò)應(yīng)用開(kāi)發(fā) 431
9.1 概述 431
9.1.1 HTTP協(xié)議 431
9.1.2 WebView 432
9.2 在線(xiàn)中英文互譯工具的設(shè)計(jì)與實(shí)現(xiàn) 439
9.2.1 HttpURLConnection 439
9.2.2 GET方式 440
9.2.3 POST方式 442
9.2.4 案例:在線(xiàn)中英文互譯工具的實(shí)現(xiàn) 445
9.3 股票即時(shí)查詢(xún)工具的設(shè)計(jì)與實(shí)現(xiàn) 448
9.3.1 OkHttp 448
9.3.2 同步請(qǐng)求 449
9.3.3 異步請(qǐng)求 453
9.3.4 Retrofit 454
9.3.5 案例:股票即時(shí)查詢(xún)工具的實(shí)現(xiàn) 457
本章小結(jié) 463
第10章 傳感器與位置服務(wù)應(yīng)用開(kāi)發(fā) 464
10.1 概述 464
10.2 傳感器的應(yīng)用 466
10.2.1 傳感器開(kāi)發(fā)框架 466
10.2.2 加速度傳感器 469
10.2.3 光照強(qiáng)度傳感器 471
10.2.4 陀螺儀傳感器 472
10.3 高德地圖在A(yíng)ndroid中的應(yīng)用 474
10.3.1 高德地圖Android SDK 475
10.3.2 集成高德地圖 475
10.3.3 顯示地圖 480
10.3.4 切換地圖顯示類(lèi)型 482
10.3.5 輸入提示查詢(xún)及改變地圖狀態(tài) 483
本章小結(jié) 488