小小小青年


  • 首页

  • 归档

Android 系统启动流程

发表于 2020-07-14
简介架构图一 架构图二 架构解析 Linux内核层:包含Linux内核和驱动模块(比如USB、Camera、蓝牙等)。 Libraries层:这一层提供动态库、android运行时库、虚拟机,这一层大部分都是C/C++写的,还有一些三方库比如SQLite, WebKit。 硬件抽象层 (HAL):硬 ...
阅读全文 »

Android Kotlin大全

发表于 2020-07-09
常用函数letKotlin为了空安全不允许定义为空的,想要定义的话就必须加上问号。123456//可以为空var name: String? = null//不可以为空,初始化为testvar name2: String = "test"//不可以为空,不做初始化lateinit var name3 ...
阅读全文 »

LeakCanary源码解析

发表于 2020-07-07
基本原理在开始LeakCanary源码分析前,先来了解下Refercence及ReferenceQueue,它们是LeakCanary实现内存泄漏监听的核心。 ReferenceReference即引用,是一个泛型抽象类。Android中的SoftReference(软引用)、WeakReferen ...
阅读全文 »

App启动流程分析

发表于 2020-07-06
简介 1.点击桌面App图标,Launcher进程采用Binder IPC向system_server进程发起startActivity请求; 2.system_server进程接收到请求后,向zygote进程发送创建进程的请求; 3.Zygote进程fork出新的子进程,即App进程; 4.Ap ...
阅读全文 »

Android Binder机制分析

发表于 2020-06-24
简介Binder能干什么?Binder可以提供系统中任何程序都可以访问的全局服务。这个功能当然是任何系统都应该提供的,下面我们简单看一下Android的Binder的框架 Android Binder框架分为服务器接口、Binder驱动、以及客户端接口;简单想一下,需要提供一个全局服务,那么全局服务 ...
阅读全文 »

Activity启动流程分析

发表于 2020-06-24
Activity startActivity12345678910111213@Overridepublic void startActivity(Intent intent) { this.startActivity(intent, null);}@Overridepub ...
阅读全文 »

Android架构解析(三):MVX

发表于 2020-06-24
阅读全文 »

Android架构解析(二):MVVM

发表于 2020-06-24
简介Model: 包含了业务和验证逻辑的数据模型View: 定义屏幕中View的结构,布局和外观ViewModel: 扮演“View”和“Model”之间的使者,帮忙处理 View 的全部业务逻辑 MVVM的目标和思想与MVP类似,利用数据绑定(Data Binding)、依赖属性(Depen ...
阅读全文 »

Android架构解析(一):MVP

发表于 2020-06-24
MVP概述MVCView: 对应于布局文件Model: 业务逻辑和实体模型Controllor: 对应于Activity 但是View对应于布局文件,其实能做的事情特别少,实际上关于该布局文件中的数据绑定的操作,事件处理的代码都在Activity中,造成了Activity既像View又像Con ...
阅读全文 »

Android AOP 解决重复点击

发表于 2020-06-16
引入依赖在项目的build.gradle中添加classpath1classpath 'com.hujiang.aspectjx:gradle-android-plugin-aspectjx:2.0.4' 在模块的build.gradle中添加依赖1apply plugin: 'android-as ...
阅读全文 »
12…6
chuangWu

chuangWu

选择大于努力

54 日志
8 分类
71 标签
© 2020 chuangWu
由 Hexo 强力驱动
|
主题 — NexT.Muse v5.1.4
本站访客数 人次 本站总访问量 次