基础知识点之深入理解 不常见知识点的分析 高级工程师必备利器! 本书是一本Android进阶类书籍,采用理论、源码和实践相结合的方式来阐述高水准的Android应用开发要点。 首先,介绍Android开发者不容易掌握的一些知识点; 第二,结合Android源代码和应用层开发过程,融会贯通,介绍一些比较深入的知识点; 第三,介绍一些核心技术和Android的性能优化思想。
序言 与玉刚共事两年,其对技术的热情和执著让人敬佩,其技术进步之快又让人惊叹。如今,他把所掌握的知识与经验成书出版,是一件大幸之事:于作者,此书是他的心血所成,可喜可贺;于读者,可解“工作视野”之困与“百思不得其解”之惑,或许有“啊哈,原来如此”之效,又或许有“技能+1”之得意一笑。 玉刚拥有丰富的And…… 前言 从目前的形势来看,Android开发相当火热,但是高级Android开发人才却比较少,当然在国内,不仅仅是Android,其他技术岗位同样面临这个问题。试想下,如果有一本书能够切实有效地提高开发者的技术水平,那该多好啊!纵观市场上的Android书籍,很多都是入门类书籍,还有一些Android源码分…… 第1章 Activity的生命周期和启动模式 作为本书的第1章,本章主要介绍Activity相关的一些内容。Activity作为四大组件之首,是使用最为频繁的一种组件,中文直接翻译为“活动”,但是笔者认为这种翻译有些生硬,如果翻译成界面就会更好理解。正常情况下,除了Window、Dialog和Toast,我们能见到的界面的确只有Activity…… 第2章 IPC机制 本章主要讲解Android中的IPC机制。首先介绍Android中的多进程概念以及多进程开发模式中常见的注意事项,接着介绍Android中的序列化机制和Binder,然后详细介绍Bundle、文件共享、AIDL、Messenger、ContentProvider和Socket等进程间通信的方式。为了…… 第3章 View的事件体系 本章将介绍Android中十分重要的一个概念:View,虽然说View不属于四大组件,但是它的作用堪比四大组件,甚至比Receiver和Provider的重要性都要大。在Android开发中,Activity承担这可视化的功能,同时Android系统提供了很多基础控件,常见的有Button、Text…… 第4章 View的工作原理 在本章中主要介绍两方面的内容,首先介绍View的工作原理,接着介绍自定义View的实现方式。在Android的知识体系中,View扮演着很重要的角色,简单来理解,View是Android在视觉上的呈现。在界面上Android提供了一套GUI库,里面有很多控件,但是很多时候我们并不满足于系统提供的控件…… 第5章 理解RemoteViews 本章所讲述的主题是RemoteViews,从名字可以看出,RemoteViews应该是一种远程View,那么什么是远程View呢?如果说远程服务可能比较好理解,但是远程View的确没听说过,其实它和远程Service是一样的,RemoteViews表示的是一个View结构,它可以在其他进程中显示,由…… 第6章 Android的Drawable 本章所讲述的话题是Android的Drawable,Drawable表示的是一种可以在Canvas上进行绘制的抽象的概念,它的种类有很多,最常见的颜色和图片都可以是一个Drawable。在本章中,首先描述Drawable的层次关系,接着介绍Drawable的分类,最后介绍自定义Drawable相关的…… 第7章 Android动画深入分析 Android的动画可以分为三种:View动画、帧动画和属性动画,其实帧动画也属于View动画的一种,只不过它和平移、旋转等常见的View动画在表现形式上略有不同而已。View动画通过对场景里的对象不断做图像变换(平移、缩放、旋转、透明度)从而产生动画效果,它是一种渐近式动画,并且View动画支持自…… 第8章 理解Window和WindowManager Window表示一个窗口的概念,在日常开发中直接接触Window的机会并不多,但是在某些特殊时候我们需要在桌面上显示一个类似悬浮窗的东西,那么这种效果就需要用到Window来实现。Window是一个抽象类,它的具体实现是PhoneWindow。创建一个Window是很简单的事,只需要通过Window…… 第9章 四大组件的工作过程 本章讲述Android中的四大组件的工作过程。说到四大组件,开发者都再熟悉不过了,它们是Activity、Service、BroadcastReceiver和ContentProvider。如何使用四大组件,这不是本章关心的,毕竟这是开发者都熟悉的内容,本章按照如下的逻辑来分析Android的四大组…… 第10章 Android的消息机制 本章所要讲述的内容是Android的消息机制。提到消息机制读者应该都不陌生,在日常开发中不可避免地要涉及这方面的内容。从开发的角度来说,Handler是Android消息机制的上层接口,这使得在开发过程中只需要和Handler交互即可。Handler的使用过程很简单,通过它可以轻松地将一个任务切换到…… 第11章 Android的线程和线程池 本章的主题是Android中的线程和线程池。线程在Android中是一个很重要的概念,从用途上来说,线程分为主线程和子线程,主线程主要处理和界面相关的事情,而子线程则往往用于执行耗时操作。由于Android的特性,如果在主线程中执行耗时操作那么就会导致程序无法及时地响应,因此耗时操作必须放在子线程中…… 第12章 Bitmap的加载和Cache 本章的主题是Bitmap的加载和Cache,主要包含三个方面的内容。首先讲述如何有效地加载一个Bitmap,这是一个很有意义的话题,由于Bitmap的特殊性以及Android对单个应用所施加的内存限制,比如16MB,这导致加载Bitmap的时候很容易出现内存溢出。下面这个异常信息在开发中应该时常遇到…… 第13章 综合技术 本章介绍的主题在日常开发中使用频率略低,但是对它们有一定的了解仍然是很有必要的,下面分别介绍它们的使用场景。 我们知道,不管程序怎么写都很难避免不crash,当程序crash后虽然无法让其再继续运行,但是如果能够知道程序crash的原因,那么就可以修复错误。但是很多时候产品发布后,如果用户在使用时发…… 第14章 JNI和NDK编程 Java JNI的本意是Java Native Interface(Java本地接口),它是为了方便Java调用C、C++等本地代码所封装的一层接口。我们都知道,Java的优点是跨平台,但是作为优点的同时,其在和本地交互的时候就出现了短板。Java的跨平台特性导致其本地交互的能力不够强大,一些和操作…… 第15章 Android性能优化 本章是本书的最后一章,所介绍的主题是Android的性能优化方法和程序设计的一些思想。通过本章的内容,读者可以掌握常见的性能优化方法,这将有助于提高Android程序的性能;另一方面,本章还讲解了Android程序设计的一些思想,这将有助于提高程序的可维护性和可扩展性。另外,2015年Google在……
精彩评论