Android设计模式源码解析之原型模式
1. 模式介绍
模式的定义
用原型实例指定创建对象的种类,并通过拷贝这些原...
Android Zygote 启动流程
Android系统包含netd、servicemanager、surfaceflinger、zygote、media、installd...
Kotlin中object和companion object 区别
概念:object声明(一个类)是延迟加载的,只有当第一次被访问时才会初始化,所以...
ASM字节码插桩
为什么进行全埋点?
以往手动形式埋点
以往的埋点方式都是人为进行定义名称和选...
Android 12+ 蓝牙外放问题总结
背景
Android 12 上发现存在蓝牙外放问题,原因是存在多个应用设置通话音量,...
Android启动流程
关于项目
BeesAndroid项目旨在通过提供一系列的工具与方法,降低阅读Android系...
Android ANR分析(trace文件的产生流程)
ANR信息获取(trace文件的产生流程)
首先收集需要dump trace的进程并给对应...
android 应用卡顿监控
如何确定应用发生了卡顿?
根据前面的文章我们知道Choreographer.doFrame()方法...
Android设计模式源码解析之外观模式(Facade)
1. 模式介绍
模式的定义
外观模式(也成为门面模式)要求一个子系统的外部与...
android源代码下载
Android 源代码树位于由 Google 托管的 Git 代码库中。Git 代码库中包含 Andro...
Fresco缓存架构分析
本文是Fresco源码分析系列第二篇文章,主要来看一下Fresco中有关图片缓存的内容。
...
Android FFmpeg 音视频开发极简教程
Android FFmpeg 音视频开发系列连载
FFmpeg 开发(01):FFmpeg 编译和...
Android OpenGLES 3.0 开发系统性学习教程
基础篇
OpenGL ES 3.0 开发(01):绘制一个三角形
OpenGL ES 3.0 开...
AndroidManifest使用PackageParser.parserPackage原理分析
本文实例讲述了Android APK应用安装之AndroidManifest使用PackageParser.parse...
插件化
目前市面上有许多Android插件化方案。每种方案都有各自的实现思路。而且随着Googl...
Compose基础-创建你的第一个Compose应用
第一章 创建你的第一个Compose应用
Jetpack Compose是谷歌针对Android的声明式UI框...
Kotlin 中的 Lambda 与 Inline
在Kotlin中,有很多很酷很实用的特性,比如Lambda和高阶函数,利用这些特性,...
进程间的同步
在看Replugin源码时,发现在对插件apk文件解析之前,对这个文件加了一个ProcessL...
Android 中的开发者选项
每个 Android 开发人员都通过从开发人员选项页面启用 USB 调试来开始他们的旅程,...

