Android进阶之光图书
人气:31

Android进阶之光

本书是一本Android进阶类书籍,书中各知识点由浅入深、环环相扣,*终这些知识点形成了一个体系结构。本书共分为11章。

内容简介

本书是一本Android进阶类书籍,书中各知识点由浅入深、环环相扣,终这些知识点形成了一个体系结构。本书共分为11章。第1章介绍Android 5.0到Android 7.0的新特性。第2章介绍Material Design。第3章介绍View体系,包括View的事件分发、工作流程、自定义View等知识点。第4章介绍多线程的知识。第5章介绍网络编程与网络框架的知识。第6章介绍常用的设计模式。第7章介绍事件总线。第8到第10章介绍架构设计所需要的知识点。第11章简单介绍Android系统框架与MediaPlayer框架。本书详细并深入讲解Android开发者必备的和前沿的知识,适合有一定开发基础的开发者阅读,这有助于他们提高技术水平;同时,本书系统的知识体系结构也令高级开发者从中获益良多。

作者简介

刘望舒,Android高级工程师,拥有多年的开发和技术管理经验。对Android框架层及应用层开发有着深入的理解。热爱技术和分享,连续6年在CSDN发表技术文章,有多篇文章广受好评,并被授予CSDN博客专家称号,此外,他还活跃在简书和稀土掘金。曾在华为和开心网从事Android开发工作。

目录

目录

第1章Android新特性 1

1.1Android 5.0新特性 1

1.1.1Android 5.0主要新特性概述 1

1.1.2替换ListView和GridView的RecyclerView 3

1.1.3卡片CardView 13

1.1.43种Notification 18

1.1.5Toolbar与Palette 23

1.2Android 6.0新特性 29

1.2.1Android 6.0主要新特性概述 29

1.2.2运行时权限机制 30

1.3Android 7.0新特性 43

1.3.1Android 7.0主要新特性概述 43

1.3.2多窗口模式 44

1.4本章小结 47

第2章Material Design 48

2.1Material Design概述 48

2.1.1核心思想 48

2.1.2材质与空间 49

2.1.3动画 49

2.1.4样式 50

2.1.5图标 51

2.1.6图像 51

2.1.7组件 51

2.2Design Support Library常用控件详解 54

2.2.1Snackbar的使用 54

2.2.2用TextInputLayout实现登录界面 55

2.2.3FloatingActionButton的使用 60

2.2.4用TabLayout实现类似网易选项卡的动态滑动效果 61

2.2.5用NavigationView实现抽屉菜单界面 68

2.2.6用CoordinatorLayout实现Toolbar隐藏和折叠 74

2.3本章小结 86

第3章View体系与自定义View 87

3.1View与ViewGroup 87

3.2坐标系 89

3.2.1Android坐标系 89

3.2.2View坐标系 90

3.3View的滑动 91

3.3.1layout()方法 92

3.3.2offsetLeftAndRight()与offsetTopAndBottom() 94

3.3.3LayoutParams(改变布局参数) 95

3.3.4动画 95

3.3.5scrollTo与scollBy 96

3.3.6Scroller 98

3.4属性动画 99

3.5解析Scroller 105

3.6View的事件分发机制 108

3.6.1源码解析Activity的构成 108

3.6.2源码解析View的事件分发机制 112

3.7View的工作流程 119

3.7.1View的工作流程入口 119

3.7.2理解MeasureSpec 122

3.7.3View的measure流程 126

3.7.4View的layout流程 132

3.7.5View的draw流程 135

3.8自定义View 139

3.8.1继承系统控件的自定义View 140

3.8.2继承View的自定义View 141

3.8.3自定义组合控件 147

3.8.4自定义ViewGroup 152

3.9本章小结 164

第4章多线程编程 165

4.1线程基础 165

4.1.1进程与线程 165

4.1.2线程的状态 167

4.1.3创建线程 168

4.1.4理解中断 170

4.1.5安全地终止线程 171

4.2同步 173

4.2.1重入锁与条件对象 173

4.2.2同步方法 175

4.2.3同步代码块 176

4.2.4volatile 177

4.3阻塞队列 183

4.3.1阻塞队列简介 183

4.3.2Java中的阻塞队列 184

4.3.3阻塞队列的实现原理 186

4.3.4阻塞队列的使用场景 188

4.4线程池 190

4.4.1ThreadPoolExecutor 190

4.4.2线程池的处理流程和原理 192

4.4.3线程池的种类 193

4.5AsyncTask的原理 197

4.6本章小结 203

第5章网络编程与网络框架 204

5.1网络分层 204

5.2TCP的三次握手与四次挥手 205

5.3HTTP协议原理 207

5.3.1HTTP简介 207

5.3.2HTTP请求报文 208

5.3.3HTTP响应报文 209

5.3.4HTTP的消息报头 210

5.3.5抓包应用举例 211

5.4HttpClient与HttpURLConnection 212

5.4.1HttpClient 212

5.4.2HttpURLConnection 216

5.5解析Volley 218

5.5.1Volley基本用法 218

5.5.2源码解析Volley 223

5.6解析OkHttp 231

5.6.1OkHttp基本用法 232

5.6.2源码解析OkHttp 240

5.7解析Retrofit 255

5.7.1Retrofit基本用法 255

5.7.2源码解析Retrofit 261

5.8本章小结 270

第6章设计模式 271

6.1设计模式六大原则 271

6.2设计模式分类 273

6.3创建型设计模式 273

6.3.1单例模式 274

6.3.2简单工厂模式 277

6.3.3工厂方法模式 279

6.3.4建造者模式 281

6.4结构型设计模式 284

6.4.1模式 285

6.4.2装饰模式 288

6.4.3外观模式 291

6.4.4享元模式 295

6.5行为型设计模式 298

6.5.1策略模式 298

6.5.2模板方法模式 301

6.5.3观察者模式 304

6.6本章小结 307

第7章事件总线 308

7.1解析EventBus 308

7.1.1使用EventBus 308

7.1.2源码解析EventBus 314

7.2解析otto 324

7.2.1使用otto 324

7.2.2源码解析otto 327

第8章函数响应式编程 333

8.1RxJava基本用法 333

8.1.1RxJava概述 333

8.1.2RxJava基本实现 334

8.1.3RxJava的不完整定义回调 336

8.2RxJava的Subject 338

8.3RxJava操作符入门 339

8.3.1创建操作符 339

8.3.2变换操作符 340

8.3.3过滤操作符 344

8.3.4组合操作符 349

8.3.5辅助操作符 352

8.3.6错误处理操作符 355

8.3.7条件操作符和布尔操作符 357

8.3.8转换操作符 360

8.4RxJava的线程控制 362

8.5RxJava的使用场景 362

8.5.1RxJava结合OkHttp访问网络 362

8.5.2RxJava结合Retrofit访问网络 364

8.5.3用RxJava实现RxBus 368

8.6RxJava源码解析 370

8.6.1 RxJava的订阅过程 371

8.6.2RxJava的变换过程 372

8.6.3RxJava的线程切换过程 376

8.7本章小结 381

第9章注解与依赖注入框架 382

9.1注解 382

9.1.1注解分类 382

9.1.2定义注解 384

9.1.3注解处理器 385

9.2依赖注入的原理 392

9.2.1控制反转与依赖注入 392

9.2.2依赖注入的实现方式 393

9.3依赖注入框架 395

9.3.1为何使用依赖注入框架 395

9.3.2解析ButterKnife 395

9.3.3解析Dagger2 405

9.4本章小结 421

第10章应用架构设计 422

10.1 MVC模式 422

10.2MVP模式 423

10.2.1应用MVP模式 424

10.2.2MVP结合RxJava和Dagger2 431

10.3MVVM模式 438

10.3.1解析Data Binding 439

10.3.2应用Data Binding 457

10.4本章小结 459

第11章系统架构与MediaPlayer框架 460

11.1Android系统架构 460

11.2Android系统源码目录 463

11.2.1整体结构 463

11.2.2应用层部分 464

11.2.3应用框架层部分 465

11.2.4C/C 程序库部分 465

11.3Source Insights使用 466

11.4MediaPlayer框架 467

11.4.1Java Framework层的MediaPlayer分析 467

11.4.2JNI层的MediaPlayer分析 469

11.4.3Native层的MediaPlayer分析 471

11.5本章小结 478

后记 479

网友评论(不代表本站观点)

来自无昵称**的评论:

别的都很好 就是书的封面 有一些坑印

2017-08-09 11:18:38
来自陈苗阿**的评论:

听说这本书很好,刚收到,看了后再追评

2017-08-18 13:49:31
来自无昵称**的评论:

还好吧,纸质一般,公司买的,不要求太多了

2017-08-23 16:27:38
来自来自北**的评论:

不错 正品 值得买

2017-08-31 12:46:55
来自无昵称**的评论:

还不错,帮同事带的。

2017-09-06 16:05:06
来自saga826**的评论:

有点难,慢慢研究吧。

2017-09-09 09:22:21
来自无昵称**的评论:

帮同事采购

2017-09-13 20:22:31
来自贴地飞**的评论:

很好。。。。

2017-09-27 22:29:39
来自无昵称**的评论:

纸张实在是太差,感觉盗版的感觉

2017-10-22 13:07:10
来自懒***人**的评论:

进阶必备,深入浅出

2017-11-01 14:26:37
来自cleverc**的评论:

和艺术探索相辅相成

2017-11-02 22:04:31
来自无昵称**的评论:

刘望舒的书,一直看他的blog。很不错。但书的印刷感觉有点差了。书纸也有点软。

2017-08-24 19:22:18
来自j***5(**的评论:

书里面的内容不错,专业技术知识点全面并深入,但是印刷质量真不行,纸张也很薄。

2017-10-19 10:41:23
来自匿名用**的评论:

正好Android到了瓶颈,需要提升,搜了那么多进阶的书,就这本是最新的。看了书中的目录,基本都是我目前需要学习的内容,真的是很有帮助!

2017-09-19 12:17:36
登录后即可发表评论

免责声明

更多相关图书
在线咨询