android01的博客

https://niwoxuexi.com/blog/user/141

  • Android源码解析(十八)-- Activity布局绘制流程

    这篇文章是承接上一篇文章(Android布局加载流程:android源码解析(十七)-->Activity布局加载流程)来写的,大家都知道Activity在Android体系中扮演者一个界面展示的角色,通过上一篇文章的分析,我们知道Activity是通过Window来控制界面的展示的,一个Window对象就是一个窗口对象,而每个Activity中都有一个相应的Window对象,所以说一个Ac ...

    • 更新时间: 2019-08-29 08:45
    2841浏览
    0推荐
    0评论
  • Android源码解析(十七)-- Activity布局加载过程

    好吧,终于要开始讲讲Activity的布局加载流程了,大家都知道在Android体系中Activity扮演了一个界面展示的角色,这也是它与android中另外一个很重要的组件Service最大的不同,但是这个展示的界面的功能是Activity直接控制的么?界面的布局文件是如何加载到内存并被Activity管理的?android中的View是一个怎样的概念?加载到内存中的布局文件是如何绘制出来的?要 ...

    • 更新时间: 2019-08-29 08:44
    2525浏览
    0推荐
    0评论
  • Android源码解析(十六)-- Android应用进程Context创建流程

    今天讲讲应用进程Context的创建流程,相信大家平时在开发过程中经常会遇到对Context对象的使用,Application是Context,Activity是Context,Service也是Context,所以有一个经典的问题是一个App中一共有多少个Context?这个问题的答案是Application + N个Activity + N个Service。最后我们得出结论,应用进程的起始方法 ...

    • 更新时间: 2019-08-29 08:37
    1908浏览
    0推荐
    0评论
  • Android源码解析(十五)-- Activity销毁流程

    继续我们的源码解析,上一篇文章我们介绍了Activity的启动流程,一个典型的场景就是Activity a 启动了一个Activity b,他们的生命周期回调方法是:onPause(a) --> onCreate(b) --> onStart(b) --> onResume(b) --> onStop(a)而我们根据源码也验证了这样的生命周期调用序列,那么Activity的 ...

    • 更新时间: 2019-08-29 01:56
    1941浏览
    0推荐
    0评论
  • Android源码解析(十四)-- Activity启动流程

    好吧,终于要开始讲解Activity的启动流程了,Activity的启动流程相对复杂一下,涉及到了Activity中的生命周期方法,涉及到了Android体系的CS模式,涉及到了Android中进程通讯Binder机制等等,首先介绍一下Activity,这里引用一下Android guide中对Activity的介绍:An activity represents a single screen w ...

    • 更新时间: 2019-08-29 01:49
    2867浏览
    0推荐
    0评论
  • Android源码解析(十三)-- apk安装流程

    上一篇文章中给大家分析了一下android系统启动之后调用PackageManagerService服务并解析系统特定目录,解析apk文件并安装的过程,这个安装过期实际上是没有图形界面的,底层调用的是我们平时比较熟悉的adb命令,那么我们平时安装apk文件的时候大部分是都过图形界面安装的,那么这种方式安装apk具体的流程是怎样的呢?下面我们就来具体看一下apk的具体安装过程,相信大家都知道如果我们 ...

    • 更新时间: 2019-08-29 01:41
    2779浏览
    0推荐
    0评论
  • Android源码解析(十二)-- Android系统启动并解析Manifest的流程

    最近有同学问我关于Manifest何时被系统解析的问题,正好也分析到这一块了,索性这一章就讲解一下android系统何时解析Manifest吧,这里的Manifest指的是android安装文件apk中的androidManifest.xml文件是何时被解析的。大家应该都知道,Android系统启动之后,我们就可以在一个应用中打开另一个从未打开过的应用,或者是在一个应用中发送广播,如果另外一个应用 ...

    • 更新时间: 2019-08-29 01:37
    2132浏览
    0推荐
    0评论
  • Android源码解析(十一)-- 应用进程启动流程

    在android guide中有这样的一段关于android应用程序进程的描述:**By default, every application runs in its own Linux process. Android starts the process when any of the application's components need to be executed, then ...

    • 更新时间: 2019-08-29 01:30
    1921浏览
    0推荐
    0评论
  • Android源码解析(十)-- Launcher启动流程

    Launcher程序就是我们平时看到的桌面程序,它其实也是一个android应用程序,只不过这个应用程序是系统默认第一个启动的应用程序,这里我们就简单的分析一下Launcher应用的启动流程。不同的手机厂商定制android操作系统的时候都会更改Launcher的源代码,我们这里以android23的源码为例大致的分析一下Launcher的启动流程。通过上一篇文章,我们知道SystemServer ...

    • 更新时间: 2019-08-28 06:34
    2919浏览
    0推荐
    0评论
  • Android源码解析(九)-- SystemServer进程启动流程

    上面一文中我们讲过android系统中比较重要的几个进程:init进程,Zygote进程,SystemServer进程已经各种应用进程,其中Zygote进程是整个android系统的根进程,包含SystemServer进程已经各种应用进程在内的进程都是通过Zygote进程fork出来的,具体可参见: android源码解析之(八)-->Zygote进程启动流程那么SystemServer进程 ...

    • 更新时间: 2019-08-28 05:56
    2671浏览
    0推荐
    0评论
  • Android源码解析(八)-- Zygote进程启动流程

    大家都知道android系统的Zygote进程是所有的android进程的父进程,包括SystemServer和各种应用进程都是通过Zygote进程fork出来的。Zygote(孵化)进程相当于是android系统的根进程,后面所有的进程都是通过这个进程fork出来的,而Zygote进程则是通过linux系统的init进程启动的,也就是说,android系统中各种进程的启动方式init进程 --& ...

    • 更新时间: 2019-08-28 05:51
    2916浏览
    0推荐
    0评论
  • Android源码解析(七)-- Android之LruCache

    android开发过程中经常会用到缓存,现在主流的app中图片等资源的缓存策略一般是分两级,一个是内存级别的缓存,一个是磁盘级别的缓存。作为android系统的维护者google也开源了其缓存方案,LruCache和DiskLruCache。从android3.1开始LruCache已经作为android源码的一部分维护在android系统中,为了兼容以前的版本android的support-v4 ...

    • 更新时间: 2019-08-28 05:48
    1709浏览
    0推荐
    0评论
  • Android源码解析(六)-- Android之Log日志

    首先说点题外话,对于想学android framework源码的同学,其实可以在github中fork一份,具体地址:platform_frameworks_base这里面基本都是android framework层的源码了。而且最近发现了一个比较不错的github插件:OctoTree,它 是一个浏览器插件,它可以让你在Github 看代码时,左边栏会出现一个树状结构,就像我们在IDE 一样。当 ...

    • 更新时间: 2019-08-28 05:44
    2077浏览
    0推荐
    0评论
  • Android源码解析之(五)-- Android之IntentService

    什么是IntentService?简单来说IntentService就是一个含有自身消息循环的Service,首先它是一个service,所以service相关具有的特性他都有,同时他还有一些自身的属性,其内部封装了一个消息队列和一个HandlerThread,在其具体的抽象方法:onHandleIntent方法是运行在其消息队列线程中,废话不多说,我们来看其简单的使用方法:定义一个IntentS ...

    • 更新时间: 2019-08-27 23:53
    1740浏览
    0推荐
    0评论
  • Android源码解析之(四)-- Android之HandlerThread

    HandlerThread是个什么东西?查看类的定义时有这样一段话:Handyclassforstartinganewthreadthathasalooper.Theloopercanthenbeusedtocreatehandlerclasses.Notethatstart()muststillbecalled.意思就是说:这个类的作用是创建一个包含looper的线程。那么我们在什么时候需要用到 ...

    • 更新时间: 2019-08-27 23:49
    2296浏览
    0推荐
    0评论