Android的发展趋势
Android (安卓)是一种基于Linux的自由及开放源代码的操作系统,由Google公司和开放手机联盟领导及开发,主要用于移动终端设备,如市场上的智能手机和平板电脑。Android系统平台以开源性和丰富的可扩展性受到用户好评,国内拥有数量庞大的智能Android手机用户群,手机管理软件凭借丰富的App应用资源下载和便捷的管理功能,成为Android手机用户的装机必备选择。
大量的用户需求使得Android App开发仍然以源源不断的上线方式来展现。从普通大众的消费水平以及使用习惯上看,Android App开发的市场还是很广阔的。不少游戏平台都转向Android手机,对Android游戏App开发将会持续增多。放眼应用市场,不难发现Android App开发所涵盖的类型和领域非常多,游戏、社交、旅游、工具等类型的应用都有大量的Android系统开发。Android开发产品的数量会不断增加,质量也会不断改进。
本书的编写安排
本书可以作为Android开发的一本入门图书,通过理论知识与大量的案例来介绍Android应用开发的各方面知识。在学习本书之前,需要读者具备Java基础知识,因为Android开发使用的是Java语言,建议读者先了解理论知识,掌握组件的使用方式,然后通过具体的案例来达到熟练应用。
本书共分为12章,具体如下:
第1章主要介绍Android的基础知识,包括Android的发展史、Android的系统架构、开发环境的搭建、第一个Android项目的创建、项目的文件结构。通过这些基础知识让开发者对Android项目的创建及目录有一个简单的了解。
第2、3章主要介绍Android的布局以及Activity,包括Android的六大布局、各种组件的使用、AdapterView及其子类的使用、Intent的使用方式。通过这部分讲解可以让开发者实现简单的用户注册。
第4、5章主要介绍Android的事件处理机制和Fragment,讲述Android事件处理机制的方式、异步类的使用、Fragment的生命周期以及Fragment与Activity之间的通信。
第6~8章主要介绍Android的数据存储、内容提供者以及服务和广播的使用。在这几章中,针对每个知识点都通过具体的案例来讲解,让开发者快速地掌握Android开发的几大组件。
第9、10章主要介绍Android的网络通信编程,包括HTTP通信、Socket通信、数据提交方式以及Android+PHP开发。这两章通过从网络下载图片在应用程序中的显示来讲解HTTP通信,通过搭建本地PHP开发环境来讲解Android和本地服务器的通信,让开发者对Android的网络编程有基本的了解。
第11章主要通过具体的案例(“倾心家教”应用案例)开发来讲解Android+PHP+MySQL的使用。本章从项目的需求分析、界面设计、数据库设计、功能实现来完整地讲解Android项目的开发流程。
第12章主要通过具体的案例(“橙一色”App项目案例)开发来讲解Android+Spring Boot+MySQL的使用。本章从项目的需求分析、界面设计、数据库设计、功能实现来完整地讲解Android前端+服务器端项目的完整开发流程。
本书的配套资源
本书提供教学大纲、教学课件、电子教案、习题答案、程序源码和教学进度表等配套资源,本书还提供900分钟的微课视频。
资源下载提示
课件等资源: 扫描封底的“课件下载”二维码,在公众号“书圈”下载。
素材(源码)等资源: 扫描目录上方的二维码下载。
视频等资源: 扫描封底刮刮卡中的二维码,再扫描书里章节中的二维码,可以在线学习。
致谢
本书的编写由兰红、王建雄、井福荣共同完成。特别感谢李志军、朱合隆、方治屿同学,“倾心家教”和“橙一色”App项目案例均为大学生创新项目作品,目前已投入使用。感谢徐民霖、李浩瀚、王坤、朱纯煜等同学对文稿的校对,衷心感谢支持本书出版的各位领导和同事,感谢为本书顺利出版做出努力的清华大学出版社。
意见反馈
本书代码基于Android 8.0版本,在Android Studio上验证通过。由于水平有限,书中难免存在疏漏之处,请广大读者批评指正。
作者
2020年7月
第1章Android入门
1.1Android概述
1.1.1无线通信技术
1.1.2Android基本介绍
1.1.3Android系统架构
1.2搭建Android开发环境
1.3开发第一个Android程序
1.3.1创建与运行第一个HelloWorld程序
1.3.2学习项目文件
1.3.3Android项目结构
1.3.4AndroidManifest.xml详解
1.4【项目案例1】“橙一色”App项目创建
1.5本章小结
1.6课后习题
第2章Android应用界面
2.1View概念
2.2布局管理器
2.2.1创建和使用布局文件
2.2.2布局的类型
2.3Android控件详解
2.3.1TextView
2.3.2EditText
2.3.3Button
2.3.4ImageView
2.3.5RadioButton和CheckBox
2.3.6ProgressBar
2.3.7SeekBar
2.4AdapterView及其子类
2.4.1ListView和ListActivity
2.4.2Adapter接口
2.5对话框的使用
2.6Toast的使用
2.7Log的使用
2.8用户注册案例布局讲解
2.9【项目案例2】“橙一色”App注册/登录界面设计
2.10本章小结
2.11课后习题
第3章Activity
3.1Activity基础
3.1.1认识Activity
3.1.2如何创建Activity
3.1.3Activity的生命周期
3.1.4Activity中的单击事件
3.2Intent的使用
3.2.1Intent浅析
3.2.2显式Intent
3.2.3隐式Intent
3.3Activity中的数据传递方式
3.4用户注册案例功能实现
3.5本章小结
3.6课后习题
第4章Android事件处理
4.1Android事件处理机制
4.2基于监听的事件处理
4.3基于回调的事件处理
4.4AnsyncTask异步类的功能与用法
4.5【项目案例3】“橙一色”App注册验证
4.6本章小结
4.7课后习题
第5章Fragment基础
5.1Fragment概述
5.2Fragment的生命周期
5.3Fragment的创建
5.4Fragment与Activity之间的通信
5.5【项目案例4】“橙一色”App商品展示功能实现
5.6本章小结
5.7课后习题
第6章Android数据存储
6.1数据存储方式简介
6.2文件存储
6.2.1外部存储
6.2.2内部存储保存用户注册信息
6.3XML文件的序列化与解析
6.3.1XML序列化
6.3.2XML序列化实例
6.3.3XML文件解析
6.3.4XML解析实例
6.4SharedPreferences的使用
6.4.1SharedPreferences简介
6.4.2使用SharedPreferences存储用户注册信息
6.5SQLite数据库
6.5.1SQLite数据库简介
6.5.2SQLite数据库操作类以及接口
6.5.3SQLite数据库的操作
6.5.4使用SQLite数据库展示用户信息
6.6JSON学习
6.6.1JSON简介
6.6.2JSON解析案例
6.7【项目案例5】“橙一色”App数据存储及主页展示
6.8本章小结
6.9课后习题
第7章ContentProvider的使用
7.1ContentProvider简介
7.2操作ContentProvider
7.2.1ContentProvider的创建
7.2.2Uri简介
7.2.3使用ContentProvider获取通讯录
7.3使用ContentProvider共享数据
7.3.1ContentResolver简介
7.3.2系统短信备份案例
7.3.3跨应用数据共享案例
7.4ContentObserver
7.4.1ContentObserver简介
7.4.2监控短信发送案例
7.5本章小结
7.6课后习题
第8章Service和广播的使用
8.1Service简介
8.1.1Service的创建和配置
8.1.2Service的启动与停止
8.2Service的生命周期
8.3Service通信
8.3.1本地服务和远程服务通信
8.3.2本地服务通信实例
8.3.3跨应用启动服务实例
8.4系统服务类的使用
8.4.1TelephonyManager
8.4.2SmsManager
8.5广播消息
8.5.1广播简介
8.5.2静态注册广播案例
8.5.3动态注册广播案例
8.6【项目案例6】“橙一色”App消息推送功能实现
8.7本章小结
8.8课后习题
第9章Android网络通信编程
9.1网络编程基础
9.1.1HTTP简介
9.1.2标准Java接口
9.1.3Android网络接口
9.2HTTP通信
9.2.1HttpURLConnection简介
9.2.2HttpURLConnection接口使用案例
9.2.3HttpClient简介
9.2.4HttpClient的使用案例
9.3Socket通信
9.3.1Socket通信原理
9.3.2Socket通信案例
9.4数据提交方式
9.4.1GET方式提交数据
9.4.2POST方式提交数据
9.5OkHttp的使用
9.5.1OkHttp的GET和POST请求
9.5.2在Android中使用OkHttp
9.6本章小结
9.7课后习题
第10章Android+PHP开发
10.1PHP介绍
10.2PHP+MySQL简介
10.2.1PHP连接MySQL
10.2.2PHP 创建数据库
10.2.3PHP创建数据表
10.2.4PHP对数据库表的基本操作
10.3PHP+Android简介
10.3.1Android与PHP结合
10.3.2用户登录案例
10.4本章小结
10.5课后习题
第11章“倾心家教”应用案例开发
11.1应用分析
11.2应用界面设计
11.2.1登录界面设计
11.2.2主界面规划设计
11.2.3找教师界面
11.2.4消息界面
11.2.5个人信息界面
11.3数据库设计
11.4应用功能实现
11.4.1应用主界面实现
11.4.2教师查询/预约功能实现
11.4.3个人信息管理功能实现
11.4.4预约的教师查询功能
11.4.5设置功能的实现
11.5应用发布
11.6本章小结
第12章“橙一色”App功能优化及完善
12.1应用分析
12.2App应用技术
12.2.1Spring Boot框架
12.2.2MyBatis持久层框架
12.2.3Fastjson解析库
12.3“橙一色”App应用功能界面设计
12.3.1商品界面
12.3.2购物车界面
12.4数据库创建
12.5Web前端界面设计
12.6Spring Boot服务端设计
12.6.1用户接口的设计
12.6.2商品接口的设计
12.6.3消息接口的设计
12.6.4销量接口的设计
12.7“橙一色”App端功能实现
12.7.1App登录/注册实现
12.7.2App首页商品信息展示功能实现
12.7.3App商品信息展示功能实现
12.7.4App消息推送功能实现
12.8本章小结
参考文献