编辑推荐
1,讲解了Android Studio集成开发环境,Android Studio常见操作,Gradle技术,UI界面布局,Material Design设计语言,核心组件介绍,Android事件处理,图形图像和动画处理,开发音频/视频应用程序,GPS地图定位,Android传感器应用开发详解,编写安全的应用程序,Android应用优化
2,几乎涵盖了Android Studio应用开发所能涉及到的所有领域,在讲解每一个知识点时,都遵循了理论联系实际的讲解方式,用具体实例彻底剖析了Android Studio开发的每一个知识点
(3)实例典型
全书精心筛选的极具代表性、读者非常关心的典型知识点,几乎包括Android Studio应用开发的各个方面。
容简介
全书共分18章,依次讲解了Android开发基础、搭建Android开发环境、Android Studio集成开发环境介绍、Android Studio常见操作、分析Android应用程序文件的组成、Gradle技术基础、UI界面布局、Material Design设计语言、核心组件介绍、Android事件处理、图形图像和动画处理、开发音频/视频应用程序、GPS地图定位、Android传感器应用开发、编写安全的应用程序、Google Now和Android Wear、Android应用优化以及Android TV开发。本书几乎涵盖了Android Studio应用开发所能涉及的所有领域,在讲解每一个知识点时,都遵循了理论联系实际的讲解方式,用具体实例彻底剖析了Android Studio开发的每一个知识点。本书讲解方法通俗易懂,特别有利于初学者学习并消化。
本书适合Android初级读者、Android应用开发人员、Android爱好者、Android Studio开发人员、Android智能家居、Android可穿戴设备研发人员学习,也可以作为相关培训学校和大专院校相关专业的教学用书。
作者简介
硕士,精通Java、C语言、C++程序开发,擅长底层技术和应用程序的结合。熟悉Android和iOS系统,有丰富的Android和iOS开发经验。
目录
第1章Android开发基础1
1.1移动智能设备系统发展现状1
1.2Android系统基础2
1.2.1Android系统的发展现状2
1.2.2常见的Android设备2
1.3Android系统架构3
1.3.1层的操作系统层(OS)—C/C++实现4
1.3.2Android的硬件抽象层—C/C++实现4
1.3.3各种库(Libraries)和Android运行环境(RunTime)—中间层5
1.3.4应用程序框架(Application Framework)6
1.3.5应用程序(Application)—Java实现6
1.4Android和Linux的关系6
1.4.1Android继承于Linux6
1.4.2Android和Linux内核的区别7
1.5Android开发学习路线图8
1.5.1Android开发的两大方向8
1.5.2Android应用开发需要具备的基础知识9
第2章搭建Android开发环境11
2.1Android Studio介绍11
2.2准备工作12
2.2.1系统要求12
2.2.2获取并安装JDK12
2.3官方方式获取并安装Android Studio15
2.3.1官方方式获取工具包15
2.3.2安装工具包17
2.4非官方方式获取并安装工具包18
2.4.1快速下载站点介绍18
2.4.2单独获取并安装Android Studio19
2.4.3单独获取并安装Android SDK20
2.5启动Android Studio22
2.5.1启动前的设置工作22
2.5.2正式启动24
2.6通过官网学习搭建环境25
第3章Android Studio集成开发环境介绍27
3.1Welcome to Android Studio面板27
3.2系统设置面板28
3.3系统默认设置面板29
3.3.1Appearance & Behavior(外观与行为)面板30
3.3.2Keymap(快捷键)面板32
3.3.3Editor(编辑器)面板33
3.4主界面面板34
3.4.1菜单栏35
3.4.2工具栏37
3.4.3左侧面板38
3.4.4中间编辑区域39
3.4.5底部调试区域40
3.4.6右侧模式面板42
第4章Android Studio常见操作43
4.1新建一个新工程43
4.2Android SDK操作47
4.2.1Android SDK管理器操作48
4.2.2设定Android SDK Location49
4.2.3安装/删除/更新Android SDK50
4.2.4集中管理Android SDK54
4.3AVD模拟器操作56
4.3.1创建新的AVD模拟器57
4.3.2启动AVD模拟器61
4.3.3修改AVD模拟器62
4.3.4删除AVD模拟器63
4.4导入/导出操作64
4.4.1导入一个既有Android Studio项目64
4.4.2导入一个既有Eclipse项目66
4.5导入/导出设置69
4.5.1Import Settings(导入设置)69
4.5.2Export Settings(导出设置)69
4.6个Android应用程序70
4.6.1使用Android Studio新建Android工程70
4.6.2编写代码和代码分析71
4.6.3调试程序71
4.6.4模拟器运行项目72
4.6.5真机运行项目73
第5章分析Android应用程序文件的组成76
5.1两种目录结构概览76
5.1.1Project模式76
5.1.2Android模式76
5.2“app”目录77
5.2.1“java”子目录77
5.2.2“res”子目录78
5.2.3设置文件AndroidManfest.xml79
5.3“Gradle Scripts”目录80
5.3.1文件build.gradle81
5.3.2文件gradle.properties81
5.3.3文件settings.gradle82
第6章Gradle技术基础83
6.1两种目录结构概览83
6.1.1安装Gradle83
6.1.2Gradle的主要功能83
6.2Android工程中的Gradle84
6.2.1文件app/build.gradle84
6.2.2“gradle”目录85
6.2.3根目录中的build.gradle86
6.2.4其他文件86
6.3和Android Studio相关的几个命令86
6.4Android Studio中的常见Gradle操作87
6.4.1查看并编译源码87
6.4.2创建二进制发布版本88
6.4.3Gradle多渠道打包90
6.4.4自定义BuildConfig92
第7章UI界面布局93
7.1View视图组件93
7.1.1View的常用属性和方法93
7.1.2Viewgroup容器94
7.1.3ViewManager类94
7.2Android UI布局的方式94
7.2.1使用XML布局95
7.2.2在Java代码中控制布局95
7.3Android布局管理器详解96
7.3.1Android布局管理器概述96
7.3.2线性布局LinearLayout98
7.3.3相对布局RelativeLayout99
7.3.4帧布局FrameLayout101
7.3.5表格布局TableLayout101
7.3.6布局AbsoluteLayout102
7.3.7网格布局GridLayout103
7.3.8实战演练—演示各种基本布局控件的用法104
第8章Material Design设计语言110
8.1Material Design概述110
8.2Material Design设计原则111
8.3环境因素:属性和阴影111
8.4动画设计112
8.4.1感知动作112
8.4.2响应式交互112
8.5实战演练—使用Material Design113
8.5.1项目概览113
8.5.2程序文件114
8.5.3布局文件120
8.5.4实现测试程序125
第9章核心组件介绍131
9.1Widget组件131
9.1.1创建一个Widget组件131
9.1.2使用按钮Button132
9.1.3使用文本框TextView133
9.1.4使用编辑框EditText135
9.1.5使用多项选择控件CheckBox136
9.1.6使用单项选择控件RadioGroup138
9.1.7使用下拉列表控件Spinner139
9.1.8使用自动完成文本控件AutoCompleteTextView142
9.1.9使用日期选择器控件DatePicker143
9.1.10使用时间选择器TimePicker控件144
9.1.11联合应用DatePicker和TimePicker145
9.1.12使用滚动视图控件ScrollView148
9.1.13使用进度条控件ProgressBar148
9.1.14使用拖动条控件SeekBar149
9.1.15使用评分组件RatingBar150
9.1.16使用图片视图控件ImageView151
9.1.17使用切换图片控件ImageSwitcher和Gallery152
9.1.18使用网格视图控件GridView155
9.1.19使用标签控件Tab156
9.2使用MENU友好界面158
9.2.1MENU基础158
9.2.2实战演练—使用MENU控件158
9.3使用列表控件ListView160
9.4使用对话框控件162
9.4.1对话框基础162
9.4.2实战演练—在屏幕中使用对话框显示问候语163
第10章Android事件处理169
10.1基于的事件处理169
10.1.1处理模型中的3种对象169
10.1.2Android系统中的事件171
10.1.3实现事件器的方法172
10.2基于回调的事件处理177
10.2.1Android事件侦听器的回调方法177
10.2.2基于回调的事件传播179
10.2.3重写onTouchEvent方法响应触摸屏事件181
10.3响应的系统设置的事件182
10.3.1Configuration类详解183
10.3.2重写onConfigurationChanged响应系统设置更改185
10.4Handler消息传递机制186
第11章图形图像和动画处理191
11.1Android绘图基础191
11.1.1使用Canvas画布191
11.1.2使用Paint类193
11.1.3位图操作类Bitmap195
11.2使用其他的绘图类198
11.2.1使用设置文本颜色类Color198
11.2.2使用矩形类Rect和RectF199
11.2.3使用变换处理类Matrix203
11.2.4使用BitmapFactory类205
11.3使用Drawable实现动画效果208
11.3.1Drawable基础208
11.3.2使用Drawable实现动画效果208
11.4Tween Animation动画详解209
11.4.1Tween动画基础210
11.4.2Tween动画类详解213
11.4.3Tween应用实战215
11.5实现Frame Animation动画效果216
11.5.1Frame动画基础216
11.5.2使用Frame动画217
11.6Property Animation动画218
11.6.1Property Animation(属性)动画基础219
11.6.2使用Property Animation220
11.7实现动画效果的其他方法223
11.7.1播放GIF动画223
11.7.2实现EditText动画225
第12章开发音频/视频应用程序227
12.1音频应用接口类概述227
12.2AudioManager类228
12.2.1AudioManager基础228
12.2.2AudioManager基本应用—设置短信提示铃声230
12.3录音处理233
12.3.1使用MediaRecorder接口录制音频233
12.3.2使用AudioRecord接口录制音频234
12.4播放音频236
12.4.1使用AudioTrack播放音频237
12.4.2使用MediaPlayer播放音频237
12.4.3使用SoundPool播放音频239
12.4.4使用Ringtone播放铃声240
12.4.5使用JetPlayer播放音频240
12.4.6使用AudioEffect处理音效241
12.5语音识别技术243
12.5.1Text-To-Speech技术243
12.5.2谷歌的Voice Recognition技术246
12.6实现振动功能248
12.7设置闹钟249
12.7.1AlarmManage基础249
12.7.2开发一个闹钟程序250
12.8使用MediaPlayer播放视频254
第13章GPS地图定位260
13.1位置服务260
13.1.1类location详解260
13.1.2实战演练—在Android设备中实现GPS定位261
13.2随时更新位置信息262
13.2.1库Maps中的类262
13.2.2使用LocationManager位置263
13.2.3实战演练—当前设备的坐标和海拔264
13.3在Android设备中使用地图270
13.3.1申请Google Map API密钥270
13.3.2使用Map API密钥的注意事项273
13.3.3使用Map API密钥274
13.3.4实战演练—在Android设备中使用谷歌地图实现定位275
13.4接近警报279
13.4.1类Geocoder基础279
13.4.2Geocoder的公共构造器和公共方法281
第14章Android传感器应用开发详解283
14.1Android传感器系统概述283
14.2Android传感器应用开发基础283
14.2.1查看包含的传感器283
14.2.2模拟器测试工具—SensorSimulator285
14.2.3实战演练—检测当前设备支持的传感器288
14.3使用光线传感器290
14.3.1光线传感器介绍290
14.3.2使用光线传感器的方法291
14.4使用磁场传感器291
14.4.1什么是磁场传感器292
14.4.2Android系统中的磁场传感器292
14.5使用加速度传感器292
14.5.1加速度传感器的分类293
14.5.2Android系统中的加速度传感器293
14.6使用方向传感器294
14.6.1方向传感器基础294
14.6.2Android中的方向传感器295
14.7使用陀螺仪传感器295
14.7.1陀螺仪传感器基础296
14.7.2Android中的陀螺仪传感器296
14.8使用旋转向量传感器297
14.9使用距离传感器详解298
14.9.1距离传感器介绍298
14.9.2Android系统中的距离传感器299
14.10使用气压传感器300
14.10.1气压传感器基础301
14.10.2气压传感器在智能手机中的应用301
14.11使用温度传感器301
14.11.1温度传感器介绍302
14.11.2Android系统中温度传感器302
14.12使用湿度传感器304
第15章编写安全的应用程序306
15.1Android安全机制概述306
15.1.1Android的安全机制模型307
15.1.2Android具有的权限307
15.1.3Android的组件模型(Component Model)308
15.1.4Android安全访问设置308
15.2声明不同的权限309
15.2.1AndroidManifest.xml文件基础309
15.2.2声明获取不同的权限309
15.2.3自定义一个权限313
15.3发布Android程序生成APK314
15.3.1什么是APK文件314
15.3.2申请会员315
15.3.3生成签名文件318
15.3.4使用签名文件323
15.3.5发布到市场325
第16章Google Now和Android Wear详解326
16.1Google Now概述326
16.1.1搜索引擎的升级—Google Now326
16.1.2Google Now的用法327
16.2什么是Android Wear328
16.3开发Android Wear程序329
16.3.1创建通知329
16.3.2创建声音331
16.3.3给通知添加页面333
16.3.4通知堆334
16.3.5通知语法介绍335
16.4实战演练—开发一个Android Wear程序336
第17章Android应用优化详解341
17.1用户体验是产品成功的关键341
17.1.1什么是用户体验341
17.1.2影响用户体验的因素342
17.1.3用户体验设计目标342
17.2Android优化概述343
17.3UI布局优化343
17.3.1标签在UI界面中的优化作用343
17.3.2遵循Android Layout优化的两段通用代码346
17.3.3优化Bitmap图片347
17.3.4FrameLayout布局优化348
17.3.5使用Android为我们提供的优化工具352
17.4Android Lint静态分析359
17.4.1使用Android Lint360
17.4.2解决错误361
17.4.3自定义Android Lint的检查提示362
17.4.4检查工程依赖的库364
17.5使用Memory Monitor内存分析工具365
17.6Code CleanUp(代码清理)367
17.7使用第三方工具368
第18章Android TV开发详解369
18.1Android TV概述369
18.2系统模块结构370
18.3系统主界面370
18.3.1系统主界面布局371
18.3.2系统主界面Activity372
18.4本地服务377
18.4.1本地服务主界面377
18.4.2应用程序管理界面380