SeAndroid 使用极速上手
1. 基本概念
SEAndroid 是一种安全系统,相关的概念和术语对于初学者来说都相...
Android Binder 机制——AIDL 的使用和原理分析
AIDL 使用步骤
1.创建 UserManager.aidl 接口文件,声明作为 Server 端的远程 S...
基于Android T:包管理机制详解(上)
前言
PackageManagerService(简称PKMS)是Android系统核心服务之一,和AMS,WM...
AOSP添加 C/C++、Java 库
本文基于 AOSP Android10_r41 源码环境。
1.添加 C/C++ 程序库
1.1 源码方...
Android 动态分区相关模块和常用工具
Android动态分区功能编译和调试用到的lpmake、lpdump、lpunpack、dmctl等命令工具...
Linux应用开发【第八章】ALSA应用开发
8 ALSA应用开发
8.1 音频相关概念
音频信号是一种连续变化的模拟信号,但计...
源码分析 | 布局文件加载流程
Activity 中的 setContentView
getWindow().setContentView(layoutResID)...
Android AB升级(一) – 升级各层级模块概述
Android A/B升级又称静默升级,它是一种在系统运行过程中进行的升级功能。为了减...
Android | 理解 ViewRootImpl
简介
ViewRootImpl 是 View 的最高层级,是所有 View 的根。ViewRootImpl 实现...
Android中adb设置cpu频率cpu频率设定
cpu频率设定
一般情况,我们在做效能测试的时候,希望得到的结果稳定,而效能...
Make 构建工具入门
1. 什么是 Make
代码变成可执行文件,叫做编译(compile);先编译这个,还是...
Android Service的启动过程
此前我用较长的篇幅来介绍Android应用程序的启动过程(根Activity的启动过程)...
Linux应用开发【第五章】线程编程应用开发
5 线程编程应用开发
本章将分为两大部分进行讲解,前半部分将引出线程的使用...
Binder 多线程分析
1. Native 层多线程分析
1.1 客户端线程相关初始化
在 [Binder 程序示例之C...
Android Handler机制:Looper、Handler、MessageQueue、Message的关系
一、概述
Handler是Android中处理异步消息的机制。Looper、Handler、MessageQue...
Android 系统架构及HAL层概述
了解宏观上Android系统架构,硬件抽象层HAL层HIDL和AIDL接口定义语言、内核kernel...
Android | 理解 Window 和 WindowManager
前言
Window 是一个窗口的概念,是所有视图的载体,不管是 Activity,Dialog,...
Hal 层添加访问 linux 驱动的接口
写给应用开发的 Android Framework 教程是一个系列教程,目前已更新以下内容:
...
Linux 驱动开发入门
1. 编写一个简单的 Linux 内核模块
首先,我们需要理解什么是内核模块?简单来...