前言 创作背景 随着智能手机的飞速发展,越来越多的App应用走进人们的生活,App开发也越发重要,出现了许多优秀的Android程序设计书籍。笔者也想为此尽一些微薄之力,以下三点是笔者的创作动机: ①利用尽量少的代码,讲清知识内涵;②知识点环环相扣,要达到一定的深度;③体会Android编程思想,并将其运用到其他不同语言的编程中。 本书内容 本书共分12章,具体内容如下。 第1章Android简介,介绍Android历史,Android Studio开发环境的安装、配置及应用方法。开发第一个Android程序,介绍其相关目录的作用,并简介Toast类的功能及两个重要的知识点。 第2章Android布局,介绍线性布局(LinearLayout)、相对布局(RelativeLayout)、表格布局(TableLayout)、网格布局(GridLayout)、框架布局(FrameLayout)的应用方法。 第3章Android控件,介绍按钮控件Button、ImageButton,状态开关控件ToggleButton、Switch,单选按钮RadioButton和多选按钮CheckBox,图片控件ImageView,文本控件TextView、EditText,列表控件ListView,下拉控件Spinner等的创建方法,类中的主要函数及事件处理机制。 第4章对话框与高级控件,介绍系统AlertDialog对话框的基本应用方法,讲解日期控件、翻页控件、增强型列表控件RecyclerView的具体实现和用法。 第5章Activity,介绍Activity的生命周期,创建Activity间的通信技术,论述Activity隐式启动技术,讲解在Activity接口应用Fragment技术的方法。 第6章网络通信,介绍URL、HttpURLConnection类的基本应用方法,编制最简单的网络通信程序“Hello world”,指出多线程在网络编程中的重要性,并对编码、解码进行详细的讨论。 第7章广播接收组件,介绍广播接收的基本原理,组件的静态注册与动态注册,普通广播与有序广播的不同,并对系统固有广播做了一定的讨论。 第8章Service,介绍Service生命周期,启动Service,绑定Service的特点及应用,对跨进程调用Service进行了深入的讨论。 第9章数据存储与共享,介绍内部存储、外部存储、资源文件存储;讲解SharedPreferences存储、SQLite数据库存储,并对ContentProvider组件进行了深入的论述。 第10章图形与动画,介绍Android 2D绘制基本图形、文字、位图的方法,对Path路径绘图进行了详细的描述;讲解帧动画、补间动画、属性动画的技术与应用。 第11章设备操作,介绍麦克风、摄像头常规操作,描述传感器的应用方法,对手机定位技术也进行了深入的讨论。 第12章第三方开发包,介绍高德地图在手机定位、搜索、公交查询、天气预报中的应用。 附加说明 (1)由于篇幅关系,示例均省略了import导入包部分,读者自行利用Android Studio可视化平台加入即可。 (2)某些程序运用了trycatch异常处理框架,同样,由于篇幅关系,略去了catch块中的代码,读者在程序调试时可自行补充。 总之,本书内容循序渐进,采取实例驱动讲授方式,所有实例复制下来编译后就可以运行。许多题目是笔者多年Android编程经验的总结,实用性较强。示例前因后果都做了必要的说明,对一些稍难的题目,对其设计思想也做了相应的论述,帮助读者加深理解。 本书第3、4、6、8、10、11、12章由金百东完成,其余章由刘德山完成。因本书程序较多,故全书变量均用正体。 由于作者水平有限,书中难免有疏漏之处,恳请广大读者批评指正。 编者2021年6月