Fork me on GitHub

随笔分类 -  Android

摘要:概述 init是 Android 启动的第一个用户空间进程,它的地位非常重要,它fork产生系统的一些关键进程(如zygote,surfaceflinger进程),而zygote进一步fork产生system_server和其他应用进程,通过这套逻辑构建了Android的进程层次结构体系。init进 阅读全文
posted @ 2024-12-16 21:40 yooooooo 阅读(176) 评论(0) 推荐(0) 编辑
摘要:从Android 10开始,Google确实有内部代号(如Android Q),但官方不再使用甜点名称作为对外版本名称。以下是各个版本的对应大写字母代号: A - Petit Four (1.1) B - 不适用 C - Cupcake (1.5) D - Donut (1.6) E - Eclai 阅读全文
posted @ 2024-11-07 14:01 yooooooo 阅读(52) 评论(0) 推荐(0) 编辑
摘要:/sys/kernel/debug/binder/目录下主要节点含义 state 显示binder设备的整体状态信息 包括进程数量、线程数量、待处理事务数量等 stats 展示binder操作的统计信息 如事务数量、内存使用情况等 transactions 列出当前正在处理的binder事务 包括发 阅读全文
posted @ 2024-09-28 21:24 yooooooo 阅读(65) 评论(0) 推荐(0) 编辑
摘要:JIT(Just-In-Time)优化在编译过程中有多种编译选项可以支持,不同语言和平台可能有不同的实现。以通用的 JIT 编译器为例,以下是一些常见的编译选项: 编译级别(Compilation Levels) 解释模式(Interpreter Mode):仅执行解释器,不进行编译。 C1 编译器 阅读全文
posted @ 2024-09-18 22:51 yooooooo 阅读(19) 评论(0) 推荐(0) 编辑
摘要:JVM开发团队一直在努力,缩小Java与C/C++语言在运行效率上的差距。 本篇博客,我们来谈一谈JVM(HotSpot)为了提高Java程序的运行效率,都实现了哪些激动人心的技术~ 1 JIT编译器的引入 首先我们这篇文章中所说的编译器都是指JVM的组成部分之一 即时编译器(JIT),与生成Jav 阅读全文
posted @ 2024-09-18 22:43 yooooooo 阅读(66) 评论(0) 推荐(0) 编辑
摘要:1.dex java程序编译成class后,dx工具将所有class文件合成一个dex文件,dex文件是jar文件大小的50%左右. 2.odex(Android5.0之前)全称:Optimized DEX;即优化过的DEX. Android5.0之前APP在安装时会进行验证和优化,为了校验代码合法 阅读全文
posted @ 2024-08-09 14:34 yooooooo 阅读(650) 评论(0) 推荐(0) 编辑
摘要:Android JIT(Just-In-Time)编译是一种动态编译技术,在运行时将字节码转换为机器码,以提高应用程序的执行效率。与静态编译不同,JIT编译是在应用程序运行时进行的,因此可以在程序执行期间进行优化。 JIT编译的工作原理 启动时解释执行:应用程序启动时,字节码通过解释器逐行执行,确保 阅读全文
posted @ 2024-07-18 10:44 yooooooo 阅读(158) 评论(0) 推荐(0) 编辑
摘要:什么是HIDL HIDL 全称为HAL interface definition language(发音为“hide-l”)是用于指定 HAL 和其用户之间的接口的一种接口描述语言 (IDL),Android O开始引入了HIDL这个概念,HIDL和应用层AIDL差不多,AIDL常用于连接App和F 阅读全文
posted @ 2024-07-17 15:07 yooooooo 阅读(758) 评论(0) 推荐(0) 编辑
摘要:JNI (Java Native Interface) 和 HAL (Hardware Abstraction Layer) 在 Android 系统中都扮演着与本地代码交互的重要角色,但它们的功能和应用场景有所不同。以下是它们之间的关系和区别: JNI (Java Native Interface 阅读全文
posted @ 2024-07-17 14:03 yooooooo 阅读(120) 评论(0) 推荐(0) 编辑
摘要:1. 关机流程 Android上层触发关机的入口很多,但最终几乎都是调用ShutdownThread.shutdown来实现。如下是一些常见的调用关机的点: StatusBarManagerService#shutdown, 这个主要是对接SystemUI(StatusBarManager是Andr 阅读全文
posted @ 2024-07-10 17:49 yooooooo 阅读(731) 评论(0) 推荐(0) 编辑
摘要:QSSI 是 Qualcomm Single System Image 的缩写。 Android Q上开始支持QSSI。 QSSI 是用来编译system.img的3.1 QSSI编译注意事项 lunch qssi 编译system.img lunch target 编译其余的image 3.2 有 阅读全文
posted @ 2024-07-04 14:21 yooooooo 阅读(338) 评论(0) 推荐(0) 编辑
摘要:1.1、冷启动和热启动 冷启动:当启动应用时,后台没有该应用的进程,这时系统会重新创建一个新的进程分配给该应用,然后再根据启动的参数,启动对应的进程组件,这个启动方式就是冷启动。 热启动:当启动应用时,后台已有该应用的进程(例:按back键、home键,应用虽然会退出,但是该应用的进程是依然会保留在 阅读全文
posted @ 2024-07-01 11:44 yooooooo 阅读(259) 评论(0) 推荐(0) 编辑
摘要:目录Handler机制1、Handler使用的引出2、背景和定义3、作用和意义4、主要参数5、工作原理及流程5.1、对应关系6、深入分析 Handler机制源码6.1、Handler机制的核心类6.2、核心方法6.3、方式1:使用 Handler.sendMessage()6.3.1、 创建Hand 阅读全文
posted @ 2024-06-24 23:01 yooooooo 阅读(300) 评论(0) 推荐(0) 编辑
摘要:您可以使用设备树编译器 (DTC) 编译设备树源文件。不过,在将叠加层 DT 应用于目标主 DT 之前,您还应该通过模拟 DTO 的行为来验证结果。 1. 通过DTC进行编译 构建主 DT .dts 的示例命令: dtc -@ -O dtb -o my_main_dt.dtb my_main_dt. 阅读全文
posted @ 2023-05-05 10:39 yooooooo 阅读(590) 评论(0) 推荐(0) 编辑
摘要:设备树源 (DTS,device tree source) 格式是设备树的文本表示形式。设备树编译器 (DTC) 可将这种格式处理为二进制设备树,这是 Linux 内核要求的形式。 1. 使用引用 DTC(Device Tree compiler + overlay patches)项目在 dtc- 阅读全文
posted @ 2023-05-04 20:36 yooooooo 阅读(118) 评论(0) 推荐(0) 编辑
摘要:设备树 (DT, Device Tree) 是用于描述 non-discoverable(google这样写的,意思应该就是硬件信息看不到) 硬件的命名节点和属性构成的一种数据结构。操作系统(例如在 Android 中使用的 Linux 内核)会使用 DT 来支持 Android 设备使用的各种硬件 阅读全文
posted @ 2023-05-04 20:10 yooooooo 阅读(824) 评论(0) 推荐(0) 编辑
摘要:一、Android中的事件处理方法 事件处理:响应用户UI动作,提高应用程序交互性 1、基于监听的事件处理机制 2、基于回调的事件处理机制 3、Handler消息处理 前面我们已经介绍了 Android事件处理方法总结-基于监听,这里我们总结一下 Android事件处理方法总结-基于回调 二、基于回 阅读全文
posted @ 2021-04-18 21:42 yooooooo 阅读(532) 评论(0) 推荐(0) 编辑
摘要:1. Fragment概述 1.1 介绍 Fragment是一种可以嵌入在活动中的UI片段,能够让程序更加合理和充分地利用大屏幕的空间,出现的初衷是为了适应大屏幕的平板电脑,可以将其看成一个小型Activity,又称作Activity片段。 使用Fragment可以把屏幕划分成几块,然后进行分组,进 阅读全文
posted @ 2021-04-18 16:40 yooooooo 阅读(2043) 评论(0) 推荐(0) 编辑
摘要:Activity作为四大组件之一,也可以说是四大组件中最重要的一个组件,它负责App的视图,还负责用户交互,而且有时候还经常其他组件绑定使用,可以说非常的重要。 虽然说我们天天都在使用Activity,但是你真的对Activity的生命机制烂熟于心,完全了解了吗?的确,Activity的生命周期方法 阅读全文
posted @ 2021-04-11 22:10 yooooooo 阅读(987) 评论(0) 推荐(0) 编辑
摘要:一、通过startActivity来进行Activity的传值 在Android中,如果我们要通过一个Activity来启动另一个Activity,可以使用 startActivity(Intent intent)方法来传入一个Intent对象,这个Intent对象我们可以精确的指定我们需要跳转的A 阅读全文
posted @ 2021-04-07 10:48 yooooooo 阅读(955) 评论(1) 推荐(0) 编辑

点击右上角即可分享
微信分享提示