章搭建Android开发环境
1.1Windows系统安装Android系统要求
1.2安装AndroidStudio和SDK
1.3配置AndroidStudio
1.4安装ndk-bundle,Cmake和LLDB
1.5AndroidStudio常用插件的安装
1.6AndroidStudio界面介绍
1.6.1主菜单栏
1.6.2ToolBar工具栏
1.6.3NavigationBar导航栏
1.6.4StatusBar状态栏
1.6.5ToolButton
1.6.6上下文菜单ContextMenus
1.6.7设置AutoImport自动导人包
1.7本章主要参考文献
第2章Android清单文件
2.1AndroidManifest.xml文件结构
2.2元素
2.3声明类名
2.4多个值
2.4.1资源值
2.5theme属性
2.6权限
2.6.1permission元素
2.6.2permission属性
2.6.3use-permission元素
2.6.4动态权限请求的实现步骤
2.7使用uses-feature元素声明应用要求
2.8intent-filter
2.8.1action元素
2.8.2category元素
2.8.3data元素
2.9uses-library元素
2.10本章主要参考文献
第3章Androidresource介绍
3.1提供资源
3.2访问资源
3.2.1在代码中访问资源
3.2.2在XML中访问资源
3.2.3访问系统资源
3.2.4引用style属性
3.3字符串资源与其他简单值
3.3.1关于字符串的值
3.3.2设置字符串的格式
3.4菜单资源
3.4.1item元素
3.4.2group元素
3.5颜色状态列表资源ColorStateList
3.6Drawable资源
3.6.1ShapeDrawable
3.6.2StateListDrawable
3.6.3LayerDrawable
3.7本章主要参考文献
第4章Gradle的Android插件
4.1Project接口介绍
4.2GradleAndroid插件
4.4setting.gradle解析
4.4Android项目根目录里的build.gradle
4.5Android模块内的build.gradle
4.5.1依赖配置
4.6配置build环境
4.6.1环境变量
4.6.2Gradle属性
4.6.3系统属性
4.6.4工程属性
4.6.5Ext(ra)Properties
4.6.6一个属性设置的实例
4.7本章主要参考文献
第5章Activity与Fragment
5.1启动Activity
5.2在application元素中声明组件
5.3使用intent-filter声明组件功能
5.4Activity生命周期
5.5创建Activity
5.5.1保存Activity状态
5.5.2处理配置变更
5.6Android结构组件
5.7任务和回退栈
5.7.1taskAffinity
5.7.2管理任务
5.8启动应用
5.9Fragment
5.9.1Fragment生命周期
5.9.2添加Fragment到Activity
5.9.3管理Fragment
5.9.4与Activity通信
5.10Context
5.11正则表达式
5.12Activity的生命周期实验
5.13Activity的launchMode实验
5.13.1launchMode为standard实验
5.13.2.launchMode为singleTop实验
5.13.3launchMode为singleTask实验
5.13.4Intent标志为FLAG_ACTIVITY_NEW_TASK实验
5.13.5launchMode为singleInstance实验
5.13.6不同的App中相同的taskAffinity的singleTask模式实验
5.13.7allowTaskReparenting=?true"实验
5.14Fragment实验
5.15本章主要参考文献
第6章Intent和IntentFilter
6.1Intent对象的主要信息
6.2Intent传递对象的两种方法
6.3显式Intent和隐式Intent
6.4接收隐式Intent
6.4.1Action测试
6.4.2category测试
6.4.3data测试
6.5隐式Intent示例
6.6强制使用应用选择器
6.7本章主要参考文献
第7章线性、表格、栅格、相对布局与帧布局
7.1LinearLayout
7.1.1LinearLayout.LayoutParams
7.1.2ViewGroup.LayoutParams
7.1.3ViewGroup.MarginLayoutParams
7.1.4layout_margin和padding的区别
7.1.5视图的大小
7.1.6从右到左的布局
7.1.7尺寸单位
7.2TableLayout
7.3GridLayout
7.4相对布局(Relativelayout)
7.5FrameLayout
7.6CardView
7.7SeekBar
7.8AddStatesFromChildren实验
7.9实验:CardView及SeekBar的使用
7.10本章主要参考文献
第8章ConstraintLayout
8.1单条边约束(相对定位)
8.2不可能约束
8.3视图的尺寸
8.4Guideline
8.5链条
8.5.1CHAIN_SPREAD链模式
8.5.2CHAIN_SPREAD_INSIDE链模式
8.5.3CHAIN_PACKED链模式
8.6圆形定位
8.7本章主要参考文献
第9章TextView
9.1EditText
9.2Button
9.3width与layout_width的关系
9.4本章主要参考文献
0章Android的双向数据绑定
10.1可观察的数据对象
10.2XML布局文件
10.2.1variable元素
10.2.2import元素
10.2.3include元素
10.2.4属性的取值
10.2.5表达式语言
10.2.6属性的绑定
10.2.7Java类型签名和方法签名
10.2.8处理事件
10.3在Java代码中使用数据绑定
10.4数据双向绑定实验
10.5本章主要参考文献
1章滚动与翻页
11.1Android触摸事件的消息传递机制
11.2嵌套滚动
11.3RecyclerView
11.4CoordinatorLayout
11.4.1设置为子视图的Behavior
11.4.2实现自定义Behavior
11.5材料设计中的AppBar
11.5.1在布局文件中使用AppBarLayout
11.5.2ToolBar
11.6NestedScrollView
11.7侧滑抽屉
11.7.1侧边菜单的显示与隐藏
11.7.2NavitationView
11.8水平翻页
11.9实验:一个View跟着另一个View移动
11.10实验:ToolBar当ActionBar使用
11.11实验:一个NestedScrollView跟随另一个垂直滚动
11.12实验:RecyclerView实验
11.13侧滑菜单实验
11.14实验:水平翻页
11.15本章主要参考文献
2章BroadcastReceiver
12.1广播类型
12.2LocalBroadcastManager
12.3BroadcastReceiver在清单文件中的语法
12.4广播接收器的生命周期
12.5广播从发送到接收的方法调用过程
12.6BroadcastReceiver实验
12.7本章主要参考文献
3章Handler与Service
13.1Handler
13.1.1Message
13.1.2Thread
13.1.3HandlerThread
13.2Service
13.2.1Service在AndroidManifest.xml中的语法
13.2.2Service的两种工作方式
13.2.3Service的生命周期
13.2.4创建绑定的Service
13.2.5绑定到Service
13.3PendingIntent与TaskStackBuilder
13.4Notification
13.4.1管理通知
13.4.2从通知中启动Activity时保留导航
13.5Handler实验
13.6Notification实验
13.7Service开始和绑定实验
13.8本章主要参考文献
4章数据存储
14.1SharedPreferences
14.2使用内部存储
14.3使用外部存储
14.3.1保存应用私有文件到外部存储
14.3.2保存可与其他应用共享的文件
14.3.3使用作用域目录访问
14.3.4访问可移动介质上的目录
14.4SQLite数据库
14.4.1SQLite存储类型
14.4.2SQLite运算符
14.4.3SQLite语句语法
14.5Android系统中的SQLiteDatabase
14.6Room持久库
14.6.1entityclass
14.6.2DAOinterface
14.6.3Database抽象类
14.6.4类型转换
14.7SharedPreference实验
14.8SQLite实验
14.9LiveData与Room实验
14.10本章主要参考文献
5章ContentProvider
15.1设计数据的原始存储方式
15.2设计ContentURI
15.3实现ContentProvider类
15.4在清单文件中注册ContentProvider
15.4.1实现ContentProvider的权限
15.4.2临时权限
15.5FileProvider
15.6ContentProvider实验
15.7本章主要参考文献
6章访问互联网
16.1httpURLConnection
16.2Android系统中JSON数据的解析
16.2.1org.json基本用法
16.2.2GoogleGson基本用法
16.3XML文件解析
16.3.1面向文档的对象式解析
16.3.2面向事件的流式解析
16.3.3XMLPullParser类
16.4httpURLConnection实验
16.5Json解析实验
16.6XML解析实验
16.7本章主要参考文献