Android从小白到大牛(Kotlin版)
- ISBN:9787302604457
- 装帧:70g胶版纸
- 册数:暂无
- 重量:暂无
- 开本:其他
- 页数:392
- 出版时间:2022-10-01
- 条形码:9787302604457 ; 978-7-302-60445-7
本书特色
Android开发者的优秀入门读物,系统阐述Kotlin的开发方法,涵盖22章教学课件、100多个示例源代码、1个完整实战项目。六位知名专家联袂推荐!配套:程序代码+赠送教学课件
内容简介
本书是一部介绍如何使用Kotlin语言开发Android应用的教程,旨在帮助读者全面掌握Android开发技术,学习独立开发Android应用项目。 本书主要介绍Android应用开发技术,分为22章,包括开篇综述、Kotlin语言基础、Android开发环境搭建、**个Android应用程序、Android界面编程基础、Android界面布局、Android基础控件、Android高级控件、活动、碎片、意图、数据存储、使用内容提供者共享数据、Android多任务开发、服务、广播接收器、多媒体开发、网络通信技术、百度地图与定位服务、Android绘图与动画技术、手机电话功能开发、项目实战——“我的备忘录”云服务版。 本书采用案例驱动式展开讲解,为便于读者高效学习,快速掌握使用Kotlin语言开发Android应用的方法,本书提供完整的教学课件、源代码、视频教程以及在线答疑服务等配套资源。本书既可作为高等学校计算机软件技术课程的教材,也可作为社会培训机构的培训教材,还可作为广大Android初学者和Android应用开发程序员的参考书。
目录
基础篇
第1章开篇综述 3
1.1Kotlin语言简介 3
1.1.1Kotlin语言设计目标 3
1.1.2Kotlin语言特点 3
1.2Android移动操作系统概述 4
1.2.1Android历史介绍 4
1.2.2Android架构 5
1.2.3Android平台介绍 6
1.3本章总结 7
第2章Kotlin语言基础 8
2.1Kotlin语言学习环境的搭建 8
2.2JDK 8
2.2.1JDK的下载和安装 8
2.2.2设置环境变量 9
2.3IntelliJ IDEA开发工具 11
2.3.1创建**个IntelliJ IDEA项目 12
2.3.2编写Kotlin源代码文件 14
2.3.3运行程序 15
2.4变量与常量 16
2.5Kotlin数据类型 17
2.5.1基本数据类型 17
2.5.2可空类型 18
2.6字符串 21
2.6.1字符串表示形式 21
2.6.2字符串模板 22
2.7Kotlin中的函数 23
2.7.1函数声明 23
2.7.2使用命名参数调用函数 24
2.7.3参数默认值 24
2.7.4表达式函数体 25
2.8Kotlin函数式编程 25
2.8.1函数类型 26
2.8.2Lambda表达式 26
2.9Kotlin面向对象编程 28
2.9.1类声明 28
2.9.2构造函数 29
2.9.3属性 30
2.10数据类 32
2.11嵌套类 32
2.11.1声明嵌套类 32
2.11.2内部类 34
2.11.3对象表达式 35
2.12抽象类与接口 37
2.12.1抽象类声明及实现 37
2.12.2接口声明及实现 39
2.13数据容器 40
2.13.1数组 41
2.13.2set集合 44
2.13.3List集合 48
2.13.4Map集合 51
2.14本章总结 55
第3章Android开发环境的搭建 56
3.1下载和安装Android Studio 56
3.2安装Android SDK 57
3.2.1配置Android SDK环境变量 58
3.2.2变更Android SDK的安装路径 59
3.3创建Android模拟器 60
3.4本章总结 62
第4章**个Android应用程序 63
4.1通过Android Studio工具创建项目 63
4.2Android项目剖析 65
4.2.1Android项目目录结构 65
4.2.2活动文件MainActivity.kt 65
4.2.3activity_main.xml布局文件 66
4.2.4AndroidManifest.xml文件 66
4.3运行项目 67
4.4学会使用Android开发者社区帮助文档 68
4.4.1在线帮助文档 68
4.4.2Android SDK API文档 68
4.4.3Android SDK开发指南 69
4.5本章总结 69
界面篇
第5章Android界面编程基础 73
5.1Android界面组成 73
5.1.1视图 73
5.1.2视图组 73
5.2Android应用界面构建 74
5.2.1使用Android Studio界面设计工具 74
5.2.2LabelButton实例:界面布局实现 74
5.3事件处理模型 78
5.3.1活动作为事件监听器 78
5.3.2对象表达式作为事件监听器 80
5.3.3Lambda表达式作为事件监听器 80
5.4屏幕上的事件处理 81
5.4.1触摸事件 81
5.4.2实例:屏幕触摸事件 82
5.4.3键盘事件 84
5.4.4实例:改变图片的透明度 84
5.5本章总结 86
第6章Android界面布局 87
6.1Android界面布局设计模式 87
6.1.1表单布局模式 87
6.1.2列表布局模式 88
6.1.3网格布局模式 88
6.2布局管理 89
6.2.1帧布局 89
6.2.2实例:帧布局 89
6.2.3线性布局 91
6.2.4线性布局实例:构建登录界面 91
6.2.5相对布局 94
6.2.6相对布局实例:构建查询功能界面 94
6.2.7网格布局 96
6.2.8网格布局实例:构建计算器界面 96
6.2.9布局文件嵌套实例:构建登录界面 98
6.3Android约束布局 100
实例:使用约束布局重构LabelButton界面 100
6.4本章总结 103
第7章Android基础控件 104
7.1按钮 104
7.1.1Button 104
7.1.2ImageButton 104
7.1.3ToggleButton 105
7.1.4实例:ButtonSample 106
7.2标签 107
7.3文本框 108
7.3.1文本框相关属性 108
7.3.2实例:用户登录 109
7.3.3实例:文本框输入控制 110
7.4单选按钮 113
7.4.1RadioButton 113
7.4.2RadioGroup 114
7.4.3实例:使用单选按钮 114
7.5复选框 116
7.5.1CheckBox 116
7.5.2实例:使用复选框 117
7.6进度栏 119
7.6.1进度栏相关属性和函数 119
7.6.2实例:水平条状进度栏 120
7.6.3实例:圆形进度栏 124
7.7拖动栏 125
7.7.1SeekBar 126
7.7.2实例:使用拖动栏 126
7.8本章总结 128
第8章Android高级控件 129
8.1列表类型控件 129
8.1.1适配器 129
8.1.2Spinner 129
8.1.3实例:使用Spinner进行选择 131
8.1.4ListView 132
8.1.5实例:使用ListView实现显示文本 133
8.1.6实例:使用ListView实现显示文本+图片 134
8.2Toast 138
实例:文本类型Toast 138
8.3对话框 139
8.3.1实例:显示文本信息对话框 139
8.3.2实例:简单列表项对话框 141
8.3.3实例:单选列表对话框 142
8.3.4实例:复选列表对话框 144
8.3.5实例:复杂布局对话框 146
8.4操作栏和菜单 148
8.4.1操作栏 148
8.4.2菜单编程 149
8.4.3实例:文本菜单 149
8.4.4实例:操作表按钮 151
8.5本章总结 152
第9章活动 153
9.1活动概述 153
9.1.1创建活动 153
9.1.2活动的生命周期 155
9.1.3实例:Back和Home按钮的区别 156
9.2多个活动之间的跳转 161
9.2.1用户登录 161
9.2.2启动下一个活动 162
9.2.3参数传递 164
9.2.4返回上一个活动 165
9.3活动任务与返回栈 166
9.4本章总结 167
第10章碎片 168
10.1界面重用问题 168
10.2碎片技术 169
10.3碎片的生命周期 169
10.4使用碎片开发 171
10.4.1碎片相关类 171
10.4.2创建碎片 172
10.4.3静态添加碎片到活动 173
10.4.4动态添加碎片到活动 174
10.4.5管理碎片事务 175
10.4.6碎片与活动之间的通信 175
10.5实例:比赛项目 176
10.5.1创建两个碎片 177
10.5.2创建MainActivity活动 181
10.5.3点击Master碎片列表项 183
10.5.4数据访问对象 186
10.6本章总结 187
进阶篇
第11章意图 191
11.1意图概述 191
11.1.1意图与目标组件间的通信 191
11.1.2意图对象包含的内容 191
11.2意图类型 192
11.2.1显式意图 192
11.2.2隐式意图 193
11.3匹配组件 193
11.3.1动作 194
11.3.2数据 195
11.3.3类别 196
11.4实例:Android系统内置意图 197
11.5本章总结 199
第12章数据存储 200
12.1Android数据存储概述 200
12.2本地文件 200
12.2.1沙箱目录设计 200
12.2.2访问应用程序files目录 201
12.2.3实例:访问本地CSV文件 201
12.3SQLite数据库 205
12.3.1SQLite数据类型 205
12.3.2Android平台下管理SQLite数据库 206
12.4SQLite数据存储实例:我的备忘录 207
12.4.1我的备忘录App概述 207
12.4.2数据库设计 208
12.4.3SQLiteOpenHelper帮助类 208
12.4.4数据查询 209
12.4.5数据插入 213
12.4.6数据删除 214
12.5使用SharedPreferences 217
实例:读写SharedPreferences 217
12.6本章总结 219
第13章使用内容提供者共享数据 220
13.1内容提供者概述 220
13.2Content URI 221
13.2.1Content URI概述 221
13.2.2内置Content URI 222
13.3实例:访问联系人信息 223
13.3.1查询联系人 223
13.3.2运行时权限 227
13.4实例:查询联系人Email 229
13.5实例:查询联系人电话 231
13.6实例:访问通话记录 232
13.7本章总结 237
第14章Android多任务开发 238
14.1Android中使用Kotlin协程 238
14.1.1在项目中添加协程库 238
14.1.2**个Android协程程序 240
14.2案例:协程实现计时器 241
14.2.1主线程更新UI问题 242
14.2.2协程解决更新UI问题 242
14.3本章总结 243
第15章服务 244
15.1服务概述 244
15.1.1创建服务 244
15.1.2服务的分类 245
15.2启动类型服务 246
15.2.1启动类型服务生命周期 246
15.2.2实例:启动类型服务 247
15.3绑定类型服务 248
15.3.1绑定类型服务生命周期 248
15.3.2实例:绑定类型服务 249
15.4本章总结 252
第16章广播接收器 253
16.1广播接收器概述 253
16.2编写与注册广播接收器 253
16.2.1编写广播接收器 253
16.2.2注册广播接收器 254
16.2.3实例:发送广播 255
16.3系统广播 257
16.3.1系统广播动作 257
16.3.2实例:Downloader 257
16.4通知 262
发送通知实例:NotificationSample 262
16.5本章总结 265
第17章多媒体开发 266
17.1多媒体文件概述 266
17.1.1音频文件 266
17.1.2视频文件 267
17.2Android音频/视频播放API 267
17.2.1核心API——MediaPlayer类 268
17.2.2播放状态 268
17.3音频播放实例:MyAudioPlayer 270
17.3.1资源音频文件播放 270
17.3.2本地音频文件播放 274
17.4Android音频/视频录制API 277
17.5音频录制实例:MyAudioRecorder 278
17.6视频播放 281
17.6.1VideoView控件 281
17.6.2实例:使用VideoView控件播放视频 281
17.7本章总结 283
第18章网络通信技术 284
18.1网络通信技术概述 284
18.1.1Socket通信 284
18.1.2HTTP 284
18.1.3HTTPS 285
18.1.4Web服务 285
18.1.5搭建自己的Web服务器 285
18.2发送网络请求 287
18.2.1使用java.net.URL 288
18.2.2重构实例:“我的备忘录”App 291
18.2.3使用第三方请求库OkHttp4 293
18.2.4OkHttp4发送Post请求实例:“我的备忘录”App 293
18.2.5实例:Downloader 295
18.3本章总结 296
第19章百度地图与定位服务 297
19.1使用百度地图 297
19.1.1获得Android签名证书中的SHA1值 297
19.1.2搭建和配置环境 298
19.1.3实例:显示地图 301
19.1.4实例:设置地图状态 304
19.1.5实例:地图覆盖物 306
19.2定位服务 308
19.2.1定位服务授权 308
19.2.2位置信息提供者 309
19.2.3管理定位服务 310
19.2.4实例:MyLocation 311
19.2.5测试定位服务 314
19.3定位服务与地图结合实例:WhereAMI 317
19.4本章总结 321
第20章Android绘图与动画技术 322
20.1Android 2D绘图技术 322
20.1.1画布和画笔 322
20.1.2实例:绘制点和线 323
20.1.3实例:绘制矩形 324
20.1.4实例:绘制弧线 326
20.1.5实例:绘制位图 327
20.2位图变换 328
20.2.1矩阵 328
20.2.2实例:位图变换 328
20.3调用Android照相机获取图片 329
20.3.1调用Android照相机 329
20.3.2调用Android照相机实例:CameraTake 330
20.4Android动画技术 334
20.4.1渐变动画 334
20.4.2实例:渐变动画 335
20.4.3动画插值器 339
20.4.4使用动画集 340
20.4.5帧动画 340
20.5本章总结 342
第21章手机电话功能开发 343
21.1拨打电话功能 343
21.1.1拨打电话功能概述 343
21.1.2实例:拨打电话 344
21.2访问电话呼入状态功能 346
21.2.1呼入电话状态 346
21.2.2实例:电话黑名单(Blacklist) 347
21.3本章总结 351
实战篇
第22章项目实战——“我的备忘录”云服务版 355
22.1应用分析与设计 355
22.2编码实现过程 356
22.2.1用Android Studio创建项目 356
22.2.2查询备忘录功能 357
22.2.3增加备忘录功能 362
22.2.4删除备忘录功能 366
22.3Android设备测试 368
22.4还有“*后一公里” 369
22.4.1添加图标 369
22.4.2生成数字签名文件 369
22.4.3发布打包 370
作者简介
关东升 一个在IT领域摸爬滚打20多年的老程序员、知名培训专家、畅销书作家。精通多种IT技术。参与设计和开发北京市公交一卡通大型项目,开发国家农产品追溯系统、金融系统微博等移动客户端项目,并在App Store发布多款游戏和应用软件。 长期为中国移动、中国联通、南方航空、中石油、工商银行、平安银行和天津港务局等企事业单位提供培训服务。先后出版了《iOS开发指南》《Cocos2d-x实战》《Java从小白到大牛》《Python从小白到大牛》等40多部图书。
-
有限与无限的游戏:一个哲学家眼中的竞技世界
¥37.4¥68.0 -
全图解零基础word excel ppt 应用教程
¥12.0¥48.0 -
机器学习
¥59.4¥108.0 -
深度学习的数学
¥43.5¥69.0 -
智能硬件项目教程:基于ARDUINO(第2版)
¥31.9¥65.0 -
硅谷之火-人与计算机的未来
¥14.3¥39.8 -
元启发式算法与背包问题研究
¥38.2¥49.0 -
AI虚拟数字人:商业模式+形象创建+视频直播+案例应用
¥62.9¥89.8 -
UNIX环境高级编程(第3版)
¥164.9¥229.0 -
剪映AI
¥52.8¥88.0 -
深度学习高手笔记 卷2:经典应用
¥90.9¥129.8 -
纹样之美:中国传统经典纹样速查手册
¥76.3¥109.0 -
UG NX 12.0数控编程
¥22.1¥45.0 -
MATLAB计算机视觉与深度学习实战(第2版)
¥90.9¥128.0 -
界面交互设计理论研究
¥30.8¥56.0 -
UN NX 12.0多轴数控编程案例教程
¥25.8¥38.0 -
微机组装与系统维护技术教程(第二版)
¥37.8¥43.0 -
明解C语言:实践篇
¥62.9¥89.8 -
Linux服务器架设实战(Linux典藏大系)
¥83.3¥119.0 -
Visual Basic 语言程序设计基础(第6版)
¥32.0¥45.0