Android嵌入式开发及实训
作者:周薇,王想实,李昊主编
出版时间:2019年版
内容简介
本书基于Android Studio集成开发工具,循序渐进地介绍了Android应用程序开发的基本内容。本书共11章,第1章为Android入门概述;第2章~第10章以项目的形式,分别介绍了图形界面、Activity与Intent、数据库与ContentProvider、数据存储、Service、BroadcastReceiver、多线程、网络编程和串口编程。其中,大部分项目通过需求分析、界面设计、实施等环节,逐步引导读者完成项目操作,同时,在每章的后半部分,讲解了对应项目所用到的基本概念与功能,并通过章末的实训环节加深理解;第11章为综合实训,旨在通过一个完整的实训项目巩固前面所学的知识。本书内容翔实、语言精练,既可以作为高等院校、高等职业院校计算机、物联网等专业的教材,也可以作为移动互联开发人员参考用书。
目录
目 录
第1章 Android入门概述\t1
1.1 Android基本知识\t1
1.1.1 Android SDK与API Level对应关系\t1
1.1.2 Android架构\t2
1.1.3 Android应用程序组件\t4
1.2 搭建开发环境\t6
1.3 HelloAndroid入门项目\t7
1.3.1 需求分析\t7
1.3.2 实施\t8
1.4 Android项目结构分析\t15
1.5 Android学习资料\t16
1.6 练习题\t17
1.7 作业\t17
第2章 图形界面――计算器项目\t18
2.1 需求分析\t18
2.2 界面设计\t18
2.3 实施\t19
2.3.1 创建项目\t19
2.3.2 界面实现\t19
2.3.3 Java代码\t23
2.3.4 运行测试\t24
2.4 界面设计基础\t24
2.4.1 View和ViewGroup\t24
2.4.2 基本概念\t25
2.4.3 共有属性\t26
2.5 事件处理\t29
2.5.1 设置控件的onClick属性\t29
2.5.2 使用匿名类实现监听器接口\t30
2.5.3 使用屏幕类实现监听器接口\t30
2.6 布局\t31
2.6.1 线性布局\t31
2.6.2 相对布局\t33
2.6.3 其他布局\t34
2.7 常用控件\t37
2.7.1 文本类控件\t37
2.7.2 按钮类控件\t41
2.7.3 选择类控件\t42
2.7.4 提示类控件\t49
2.7.5 图片类控件\t51
2.7.6 菜单类控件\t52
2.8 调试技巧\t55
2.8.1 Debug\t55
2.8.2 LogCat\t56
2.8.3 File Explorer\t57
2.8.4 ADB工具\t58
2.8.5 手机调试\t59
2.9 实训:完善计算器项目\t60
2.10 实训:实现日期多选功能\t60
2.11 实训:设计用户注册的Activity\t61
2.12 练习题\t62
2.13 作业\t63
第3章 Activity与Intent――运动会报名项目\t64
3.1 需求分析\t64
3.2 界面设计\t64
3.3 系统设计\t65
3.3.1 功能设计\t65
3.3.2 数据保存\t66
3.3.3 给SD卡开启访问权限\t66
3.4 实施\t66
3.4.1 创建项目\t66
3.4.2 界面实现\t67
3.4.3 Java代码\t73
3.4.4 运行测试\t79
3.5 Activity的状态与生命周期\t80
3.5.1 Activity的状态\t80
3.5.2 Activity的生命周期\t81
3.6 Intent\t85
3.6.1 显式Intent\t86
3.6.2 隐式Intent\t87
3.6.3 Intent的解析机制\t89
3.7 Activity之间传递数据\t89
3.7.1 直接传递\t89
3.7.2 使用Bundle类\t89
3.7.3 返回数据\t90
3.8 实训:完善运动会报名项目\t90
3.9 练习题\t91
3.10 作业\t91
第4章 数据库与ContentProvider――用户管理项目\t92
4.1 需求分析\t92
4.2 界面设计\t92
4.3 数据结构设计\t94
4.4 实施\t95
4.4.1 创建项目\t95
4.4.2 数据库相关代码\t95
4.4.3 界面实现\t97
4.4.4 Java代码\t100
4.5 SQLite数据库管理系统\t107
4.5.1 SQLite概述\t107
4.5.2 数据类型\t107
4.5.3 基本操作方法\t108
4.5.4 专用操作方法\t110
4.5.5 SQLiteOpenHelper\t111
4.5.6 SQLite数据库的管理\t112
4.6 ContentProvider和ContentResolver\t113
4.6.1 概念与功能\t113
4.6.2 实例代码\t113
4.7 使用内置的ContentProvider\t118
4.8 实训:完善用户管理项目\t119
4.9 实训:商品选购界面\t119
4.10 练习题\t122
4.11 作业\t122
第5章 数据存储――简易相册项目\t124
5.1 需求分析\t124
5.2 界面设计\t124
5.3 实施\t125
5.3.1 创建项目\t125
5.3.2 界面实现\t125
5.3.3 Java代码\t126
5.3.4 运行测试\t130
5.4 数据存储概述\t130
5.5 文件存储\t130
5.5.1 资源文件\t131
5.5.2 资产文件\t131
5.5.3 项目文件\t132
5.5.4 外部存储\t132
5.6 共享偏好设置\t133
5.7 通知\t134
5.8 访问远程数据\t134
5.9 实训:完善简易相册项目\t135
5.10 实训:进一步完善用户管理项目\t135
5.11 练习题\t139
5.12 作业\t140
第6章 Service――MP3音乐播放器项目\t141
6.1 需求分析\t141
6.2 界面设计\t142
6.3 实施\t142
6.3.1 创建项目\t142
6.3.2 界面实现\t142
6.3.3 Java代码\t146
6.3.4 注册\t159
6.3.5 SD卡的访问权限\t159
6.3.6 运行测试\t159
6.4 Service\t159
6.4.1 Service概述\t159
6.4.2 Service的启动方式\t160
6.4.3 生命周期\t160
6.5 多媒体\t161
6.5.1 音频\t161
6.5.2 视频\t161
6.6 实训:完善MP3音乐播放器项目\t162
6.7 实训:制作音乐盒项目\t162
6.8 实训:Service练习\t164
6.9 练习题\t166
6.10 作业\t167
第7章 BroadcastReceiver――短信过滤器项目\t168
7.1 需求分析\t168
7.2 界面设计\t168
7.3 数据结构设计\t169
7.4 实施\t169
7.4.1 创建项目\t169
7.4.2 界面实现\t169
7.4.3 Java代码\t172
7.4.4 注册\t177
7.4.5 开启接收短信的权限\t177
7.4.6 运行测试\t177
7.5 BroadcastReceiver\t179
7.5.1 系统广播事件\t179
7.5.2 自定义广播事件\t180
7.5.3 广播事件机制\t181
7.6 手机通话\t181
7.6.1 拨打电话\t181
7.6.2 监视电话状态\t184
7.7 手机短信\t185
7.7.1 发送短信\t185
7.7.2 接收短信\t186
7.8 实训:完善短信过滤器项目\t187
7.9 练习题\t187
7.10 作业\t188
第8章 多线程――射击游戏项目\t189
8.1 需求分析\t189
8.2 界面设计\t189
8.3 实施\t190
8.3.1 创建项目\t190
8.3.2 界面实现\t190
8.3.3 Java代码\t191
8.3.4 运行测试\t199
8.4 多线程技术\t199
8.4.1 理解Android多线程\t199
8.4.2 主线程和子线程\t199
8.4.3 Thread类\t200
8.4.4 Handler机制和AsyncTask异步任务类\t203
8.5 绘图技术\t208
8.5.1 Paint类\t209
8.5.2 Canvas类\t209
8.5.3 SurfaceView类\t211
8.6 实训:改进射击游戏项目\t213
8.7 实训:多线程技术的应用――秒表项目\t214
8.8 练习题\t214
8.9 作业\t215
第9章 嵌入式开发:网络编程――天气预报项目\t216
9.1 需求分析\t216
9.2 界面设计\t217
9.3 实施\t217
9.3.1 创建项目\t217
9.3.2 编写WebServiceCall类\t217
9.3.3 Java代码\t219
9.3.4 运行测试\t220
9.4 网络编程概述\t221
9.5 网络编程综合项目\t221
9.5.1 客户端界面\t222
9.5.2 Socket编程\t225
9.5.3 HTTP编程\t228
9.5.4 WebService编程\t231
9.6 实训:完善天气预报项目\t235
9.7 实训:词典项目\t236
9.8 作业\t236
第10章 嵌入式开发:串口编程――读卡器项目\t237
10.1 需求分析\t237
10.2 串口介绍\t238
10.3 实验设备\t239
10.3.1 硬件设备\t239
10.3.2 Friendly ARM Tiny 6410简介\t239
10.3.3 Friendly ARM Tiny 6410的串口编程\t240
10.3.4 RFID读卡器的串口通信协议\t242
10.3.5 串口小助手\t244
10.4 实施\t245
10.4.1 连接设备\t245
10.4.2 实例代码\t245
10.5 实训:完善读卡器项目\t250
10.6 作业\t250
第11章 综合实训――诗词赏析项目\t251
11.1 项目介绍\t251
11.1.1 项目概述\t251
11.1.2 开发工具\t251
11.1.3 界面设计\t251
11.2 需求分析与功能分析\t252
11.2.1 需求分析\t252
11.2.2 功能分析 \t252
11.2.3 功能模块设计\t254
11.3 实施\t254
11.3.1 数据设计\t254
11.3.2 界面实现\t259
11.3.3 Java代码\t267
11.4 运行测试\t277
参考文献\t\t278