这篇博客没有内容,就是几张图片,对于Android开发人员必须熟透的几张图片

一张图读懂Android系统框架

Android 的系统图,

  1. Linux内核层
    Android系统是基于Linux 2.6内核的,这一层为Android设备的各种硬件提供了底层的驱动,如显示驱动、音频驱动、照相机驱动、蓝牙驱动、Wi-Fi驱动、电源管理等。

  2. 系统运行库层
    这一层通过一些C/C++库来为Android系统提供了主要的特性支持。如SQLite库提供了数据库的支持,OpenGL|ES库提供了3D绘图的支持,Webkit库提供了浏览器内核的支持等。
    同样在这一层还有Android运行时库,它主要提供了一些核心库,能够允许开发者使用Java语言来编写Android应用。另外Android运行时库中还包含了Dalvik虚拟机,它使得每一个Android应用都能运行在独立的进程当中,并且拥有一个自己的Dalvik虚拟机实例。相较于Java虚拟机,Dalvik是专门为移动设备定制的,它针对手机内存、CPU性能有限等情况做了优化处理。

  3. 列表内容
    这一层主要提供了构建应用程序时可能用到的各种API,Android自带的一些核心应用就是使用这些API完成的,开发者也可以通过使用这些API来构建自己的应用程序。

  4. 应用层
    所有安装在手机上的应用程序都是属于这一层的,比如系统自带的联系人、短信等程序,或者是你从Google Play上下载的小游戏,当然还包括你自己开发的程序。

一张图读懂Activity的生命周期

Activity的生命周期,必须懂。最简单的方法,重写各方法,打印日志,跑一遍,基本就明白了!

一张图读懂Fragment的生命周期

  1. onAttach()
    当碎片和活动建立关联的时候调用。

  2. onCreateView()
    为碎片创建视图(加载布局)时调用。

  3. onActivityCreated()
    确保与碎片相关联的活动一定已经创建完毕的时候调用。

  4. onDestroyView()
    当与碎片关联的视图被移除的时候调用。

  5. onDetach()
    当碎片和活动解除关联的时候调用。

一张图明白Handler的原理

  1. 调用sendMessage将Message对象加入Message队列中
  2. Looper复杂管理MessageQueue,轮寻取出Message对象,回调dipatchMessage()方法,handler中的handleMessage()负责处理Looper中取出的Message对象
  3. 我们只需要在异步线程调用Handler.sendMessage(),然后在Handler的handleMessage()中处理Message就OK

更多相关文章

  1. Unity和Android互相调用方法
  2. Android(安卓)学习笔记——利用JNI技术在Android中调用、调试C++
  3. Android中各种JAVA包的功能描述
  4. Android(安卓)AsyncTask完全解析
  5. Flutter笔记(二)
  6. 利用HTML5开发Android笔记(中篇)
  7. 【Android】动态链接库so的加载原理
  8. android应用程序基本原理
  9. Android(安卓)Studio 4.0.0的介绍

随机推荐

  1. android 4.0 com.android.ddmlib.Install
  2. android AsyncTask 使用方法
  3. Eclipse Debug Android(安卓)Native Appl
  4. android之网络资源多线程下载
  5. android ListView详解--非常好
  6. Android(安卓)Intent传递数据
  7. Android 多线程更新控件
  8. Android(安卓)openGl开发详解(一)——绘
  9. android 弹出视频
  10. setting proxy for Android SDK Manager