声明:本教程为读书笔记,不收取任何费用,欢迎转载,尊重作者劳动成果,不得用于商业用途,侵权必究!!!

好记性不如烂笔头。16年那会就阅读过这本书,在印象笔记上面做了一些记录,最近重新过一篇放在博客里面。

本书的作者是任玉刚,他的博客地址:https://blog.csdn.net/singwhatiwanna

目录

内容简介

序言

前言

本书内容、章节介绍

本书特色

致谢

本书互动地址

书中源码下载地址、图书勘误


内容简介

本书基于Android 5.0版本,对Android开发进阶要点进行深入讲解, 是高级工程师成长之路上的必备利器!

本书是一本Android进阶类书籍,采用理论、源码和实践相结合的方式来阐述高水准的 Android应用开发要点。

本书从三个方面来组织内容。

第一,介绍Android幵发者不容易掌握的一些知识点;

第二,结合Android源代码和应用层开发要点,融会贯通,介绍一些比较深入的知识点;

第三,介绍一些核心技术和Android的性能优化思想。

本书侧重于Android知识的体系化和系统工作机制的分析,通过本书的学习可以极大地提高开发者的Android技术水平,从而更加高效地成为高级开发者。而对于高级开发者来说,仍然可以从本书的知识体系中获益。

序言

与玉刚共事两年,其对技术的热情和执著让人敬佩,其技术进步之快又让人惊叹。如今, 他把所掌握的知识与经验成书出版,是一件大幸之事:于作者,此书是他的心血所成,可喜可贺:于读者,可解“工作视野"之困与'‘百思不得其解”之惑,或许有"啊哈,原来如此” 之效,又或许有“技能+1”之得意一笑。

玉刚拥有丰富的Android开发经验,对Android开发的很多知识点都有深入研究,我相信此书定能为读者带来惊喜。书的内容,大抵有如下几方面:1、基础知识点之深入理解(例如, Activity的生命周期和启动模式、Android的消息机制分析、View的事件体系、View的工作 原理等章节);2、不常见知识点的分析(例如,IPC机制、理解Window和WindowManager等 章节);3、工程实践中的经验(例如,综合技术、Android性能优化等章节)。

因此,此书读者需要有一定的Android开发基础和工程经验,否则读起来会比较吃力或者感觉云里雾里。对于想成长为高级或者资深Android研发的工程师,书中的知识点都是需要掌握的。

最后,希望读者能够从此书获益,接触到一些工作中未曾了解或者思考的知识点。更进一步,希望读者能够活学活用,并学习此书背后的钻研精神。

涂勇策——百度手机卫士资深工程师

前言

从目前的形势来看,Android开发相当火热,但是高级Android开发人才却比较少,当然在国内,不仅仅是 Android,其他技术岗位同样面临这个问题。试想下,如果有一本书能 够切实有效地提高开发者的技术水平,那该多好啊!纵观市场上的Android书籍,很多都是入门类书籍,还有一些Android源码分析、系统移植、驱动开发、逆向工程等系统底层类书籍。入门类书籍是目前图书市场中的中坚力量,它们在帮助开发者入门的过程中起到了非常重要的作用,但开发者若想进一步提高技术水平,还需要阅读更深入的书籍。底层书籍包括:源码分析、驱动开发、逆向工程等书籍,它们从底层或者某一个特殊的角度来深入地分析 Android,这是很值得称赞和学习的,通过这些书可以极大地提高开发者底层或者相关领域的技术水平。

但美中不足的是,系统底层书籍比较偏理论,部分开发者阅读起来可能会有点晦涩难懂。更重要的一点,由于它们往往侧重原理和底层机制,导致它们不能直接为应用层开发服务,毕竟绝大多数Android开发岗位都是应用层开发。由于阅读底层类书籍一般只能够 加深对底层的认识,而在应用层开发中,还是不能形成直接有效的战斗力,这中间是需要转化过程的。但是,由于部分开发者缺乏相应的技术功底,导致无法完成这个转化过程。

可以发现,目前市场上既能够极大地提高开发者的应用层技术经验,又能够将上层和系统底层的运行机制结合起来的书籍还是比较少的。对企业来说,在业务上有很强的技术能力,同时对Android底层也有一定理解的开发人员,是企业比较青睐的技术髙手。为了 完成这一愿望,笔者写了这本书。通过对本书的深入学习,开发者既能够极大地提高应用层的开发能力,又能够对Android系统的运行机制有一定的理解,但如果要深入理解Android的底层机制,仍然需要査看相关源码分析的书籍。

本书适合各类开发者阅读,对于初、中级开发者来说,可以通过本书更加高效地达到高级开发者的技术水平。而对于高级开发者,仍然可以从本书的知识体系中获益。本书的书名之所以釆用艺术这个词,这是因为在笔者眼中,代码写到极致就是一种艺术。

本书内容、章节介绍

本书共15章,所讲述的内容均基于 Android 5.0 系统

第1章

介绍Activity的生命周期和启动模式以及IntentFilter的匹配规则。

第2章

介绍Android中常见的IPC机制,多进程的运行模式和一些常见的进程间通信 方式,包括Messenger, AIDL、Binder以及ContentProvider等,同时还介绍Binder连接池的概念。

第3章

介绍View的事件体系,并对View的基础知识、滑动以及弹性滑动做详细的介绍,同时还深入分析滑动冲突的原因以及解决方法。

第4章

介绍View的工作原理,首先介绍ViewRoot, DecorView, MeasureSpec等View 相关的底层概念,然后详细分析View的测量、布局和绘制三大流程,最后介绍自定义View的分类以及实现思想。

第5章

讲述一个不常见的概念Remote Views,分别描述RemoteViews在通知栏和桌面小部件中的使用场景,同时还详细介绍Pendingintent,最后深入分析RemoteViews的内部机制并探索性地指出RemoteViews在Android中存在的意义。

第6章

对Android的Drawable做一个全面性的介绍,除此之外还讲解自定义Drawable 的方法。

第7章

对Android中的动画做一个全面深入的分析,包含View动画和属性动画。

第8章

讲述Window和WindowManager,首先分析Window的内部工作原理,包括Window 的添加、更新和删除,其次分析Activity、Dialog等类型的Window对象的创建过程。

第9章

深入分析Android中四大组件的工作过程,主要包括四大组件的运行状态以及它们主要的工作过程,比如启动、绑定、广播的发送和接收等。

第10章

深入分析Android的消息机制,其中涉及的概念有Handler、Looper、 MessageQueue以及ThreadLocal,此外还分析主线程的消息循环模型。

第11章

讲述Android的线程和线程池,首先介绍AsyncTask、HandlerThread、 IntentService以及ThreadPoolExecutor的使用方法,然后分析它们的工作原理。

第12章

讲述的主题是Bitmap的加载和缓存机制,首先讲述高效加载图片的方式,接着介绍LruCache和DiskLruCache的使用方法,最后通过一个ImageLoader的实例来将它们综合起来。

第13章

是综合技术,讲述一些很重要但是不太常见的技术方案,它们是CrashHandler、 multidex、插件化以及反编译。

第14章

主题是JNI和NDK编程,介绍使用JNI和Android NDK编程的方法。

第15章

介绍Android的性能优化方法,比如常见的布局优化、绘制优化、内存泄露优 化等,除此之外还介绍分析ANR和内存泄露的方法,最后探讨如何提高程序的可维护性这 一话题。

通过这15章的学习,可以让初、中级开发者的技术水平和把控能力提升一个档次,最终成为高级开发者

本书特色

本书定位为进阶类图书,不会对一些基础知识从头说起,或者说每一章节都不涵盖各种入门知识,但是在向高级知识点过渡的时候,会稍微提及一下基础知识从而做到平滑过渡。开发者在掌握入门知识以后,通过本书可以极大地提高应用层开发的技术水平,同时还可以理解一定的Android底层运行机制,并且能够将它们进行升华从而更好地为应用层开发服务。除了这些,开发者还可以掌握一些核心技术和性能优化思想,本书涉及的知识, 都是一个合格的高级工程师所必须掌握的。简单地说,本书的目的就是让初、中级开发者更有针对性地掌握高级工程师所应该掌握的技术,能够让初、中级开发者按照正确的道路快速地成长为高级工程师。

致谢

感谢本书的策划编辑陈晓猛,他的高效率是本书得以及时出版的一个重要原因;感谢我的妻子对我写书的支持,接近1年的写书时光是她一直陪伴在我身边;感谢百度手机卫 士这款产品,它是本书的技术源泉;感谢和我一起奋斗的同事们,和你们在一起工作的时 光,我不仅提高了技术水平而且还真正感受到了一种融洽的工作氛围;还要感谢所有关注我的朋友们,你们的鼓励和认可是我前进的动力。

由于技术水平有限,书中难免会有错误,欢迎大家向我反馈:singwhatiwanna@ gmail.com,也可以关注我的CSDN博客,我会定期在上面发布本书的勘误信息。

本书互动地址

CSDN 博客:http://blog.csdn.net/singwhatiwanna

Github: https://github.com/singwhatiwanna

QQ 交流群:481798332

微信公众号:Android开发艺术探索

书中源码下载地址、图书勘误

源码地址:https://github.com/singwhatiwanna/android-art-res 或者  www.broadview.com.cn/26939

图书勘误:《Android开发艺术探索》图书勘误

任玉刚

2015年6月于北京

另外这哥们笔记写的不错:

Android艺术开发探索笔记

请别只做拿来主义者,如果觉得写的不错、对你有用,留下你的足迹:点赞 或 评论 支持下!

一直被模仿从未被超越,你们的支持是我们这些写博客博主们的动力!我们将继续分享干货!

Android开发艺术探索知识回顾——第0章 书本内容介绍相关推荐

  1. Android开发艺术探索读书笔记(第5章 RemoteView)

    原理 RemoteView的作用是在其他进程中显示并更新view界面. 大量的IPC操作会影响效率,为了解决这个问题,系统并没有通过Binder去直接支持View的跨进程访问,而是提供了一个Actio ...

  2. Android开发艺术探索笔记(一) Activity的生命周期和启动模式(1)

    Activity作为Android开发中最常用的一个组件,是Android开发人员必须熟悉且掌握的重要内容.同时Activity也是在面试中经常被问到的一个方向.因此,掌握Activity的重要性也不 ...

  3. Activity的初级,中级,高级问法,android开发艺术探索电子

    Intent implicitIntent = new Intent(); implicitIntent.setAction("com.test.image"); implicit ...

  4. 《Android开发艺术探索》读书笔记——Cha3.2.2使用动画实现View的滑动

    章节来自<Android开发艺术探索> 第一种方式 3.2.2 使用动画 上一节介绍了采用scrollTo/scrollBy来实现View的滑动,本节介绍另外一种滑动方式,即使用动画,通过 ...

  5. 《Android开发艺术探索》自定义View中关于“HorizontalScrollViewEx”的改进

    在<Android开发艺术探索>一书中自定义View一节中提到了关于一个类似横向滑动List的自定义ViewGroup:HorizontalScrollViewEx.如果你使用过的话就会发 ...

  6. 《Android开发艺术探索》图书勘误

    第一章 在13页提到"系统只在Activity异常终止的时候才会调用onSaveInstanceState与onRestoreInstanceState来储存和恢复数据,其他情况不会触发这个 ...

  7. Android开发艺术探索——第七章:Android动画深入分析

    Android开发艺术探索--第七章:Android动画深入分析 Android的动画可以分成三种,view动画,帧动画,还有属性动画,其实帧动画也是属于view动画的一种,,只不过他和传统的平移之类 ...

  8. Android开发艺术探索读书笔记(一)

    首先向各位严重推荐主席这本书<Android开发艺术探索>. 再感谢主席邀请写这篇读书笔记 + 书评.书已经完整的翻完一遍了,但是还没有细致的品读并run代码,最近有时间正好系统的把整本书 ...

  9. Android开发艺术探索--第二章IPC机制(2)之Binder

    最近在拜读任主席的Android开发艺术探索,现在看了一半,再回头看前面的,感觉跟没有看一样,所以还是把知识点总结一下吧,这一节咱们来讲一下IPC中的Binder 直观来说,Binder是Androi ...

  10. Android 开发艺术探索——第十章 Android的消息机制

    Android 开发艺术探索--第十章 Android的消息机制读书笔记 Handler并不是专门用于更新UI的,只是常被用来更新UI 概述 Android的消息机制主要值得就是Handler的运行机 ...

最新文章

  1. python3.6.0安装步骤
  2. JavaScript基础学习第四天
  3. 第二单元作业——电梯模拟总结
  4. 利用Word2010给汉字添加汉语拼音
  5. 使用ZeroTier搭建大局域网利用VNC远程桌面
  6. 大牛讲解Kubernetes实战
  7. 关于事务开启与否对数据库插入数据所需时间的影响的讨论
  8. 【转】PCDATA和CDATA的区别究竟是什么呢?
  9. sklearn gridsearchcv_sklearn调包侠之PCA降维
  10. 明翰游戏学笔记V0.2(持续更新)
  11. excel查找在哪里_Excel办公自动化,让低值费时的工作自动进行
  12. MT9 二维数组打印(Python)
  13. WEB免费打印控件推荐(4款)
  14. 西门子cnc sinumerik_2020邯郸cnc加工中心编程要多久就是工厂傅
  15. Java 基础篇:第十九章:多线程
  16. TODA SMT上料防错系统
  17. echarts:柱状图去掉网格线
  18. 超强悍抓包工具和万能视频下载工具
  19. Adobe Illustrator(AI)中输入希腊字母等特殊字符
  20. java改变图片颜色_使用java代码实现证件照换背景色

热门文章

  1. 量子机器学习(QML)(一):量子计算基础
  2. 量化—神话、黑箱与真谛
  3. java itext read a pdf file_java - 使用iText7读取PDF时遇到的问题(使用iText5) - 堆栈内存溢出...
  4. python怎么把数据导入excel_如何把python中的数据导入excel
  5. win10滑动关机代码bat_win10滑动下拉关机bat
  6. shark恒破解笔记3-EAX决定胜负
  7. Python下多变量联合分布图(pairplot)绘制——seaborn
  8. html小写罗马字符怎么写,如何在 LATEX 中插入大小写的罗马字符
  9. 新手CrossApp 之ScrollView小结
  10. Java邮件发送(使用javaMail包)