
Android系统优化
Android系统攻城狮
《Android系统多媒体进阶实战》一书作者
展开
-
Android之kernel启动init流程
kernel启动init进程原创 2022-06-15 17:11:03 · 903 阅读 · 0 评论 -
Android内核开发:如何统计系统的启动时间
转自:http://ticktick.blog.51cto.com/823160/1660996本文是《Android内核开发》系列的第七篇文章,通过上一篇文章《Android内核开发:图解Android系统的启动过程》我们大致了解了Android系统的启动过程,那么本文就从实践的角度,简单介绍一下如何统计Android系统的启动时间。这里所说的统计系统的启动时间,转载 2016-05-13 16:32:41 · 2935 阅读 · 0 评论 -
Android查看wakeLock调用情况
Android wakelock分为两层Linux层和应用层1. 查看linux 的waklock# cat /sys/power/wake_lock PowerManagerService.Display PowerManagerService.WakeLocksPower...转载 2017-03-04 12:24:04 · 6761 阅读 · 0 评论 -
Android app性能优化
原址前言在Android中,内存泄露的现象十分常见;而内存泄露导致的后果会使得应用Crash本文 全面介绍了内存泄露的本质、原因 & 解决方案,最终提供一些常见的内存泄露分析工具,希望你们会喜欢。 目录1. 简介即 ML (Memory Leak)指 程序在申请内存后,当该内存不需再使用 但 却无法被释放 & 归还给 程序的现象2. 对应用程序的影响容易使得应用程序发生内存溢出,即...转载 2018-03-01 13:24:49 · 404 阅读 · 0 评论 -
Android系统启动流程源码分析
原址1、当系统引导程序启动Linux内核,内核会记载各种数据结构和驱动程序,加载完毕之后,Android系统开始启动并加载第一个用户级别的进程:Init.c(system\core\init)//Init.c中的main()方法int main(int argc, char **argv){ //解析执行init.rc配置文件 init_parse_config_file("/...转载 2018-03-17 14:18:15 · 478 阅读 · 0 评论 -
Android5.1 bootchart在Mac使用说明(OK)(六十九)
参考:http://blog.youkuaiyun.com/dabenxiong666/article/details/52017352 https://www.zybuluo.com/guhuizaifeiyang/note/886803 http://blog.youkuaiyun.com/azhengye/article/details/69831590 http://chendongqi....原创 2017-06-01 17:59:22 · 1098 阅读 · 0 评论 -
odex vdex art区别
原址一、vdexpackage 直接转化的 可执行二进制码 文件:1.第一次开机就会生成在/system/app/<packagename>/oat/下;2.在系统运行过程中,虚拟机将其 从 “/system/app” 下copy到 “/data/davilk-cache/” 下二、odex odex 是从vdex 这个文件中 提取了部分模块生成的一个新的 可执行二进...转载 2018-12-13 15:32:35 · 2103 阅读 · 0 评论 -
dumpsys gfxinfo packacges计算帧率
原址在开发者选项中有个“ GPU呈现模式分析(Profile GPU rendering,选择在adb shell dumpsys gfxinfo中)”功能,在开启这个功能后,系统就会记录保留每个界面最后128帧图像绘制的相关时间信息。在开启这个功能后,重新启动APP,滑动页面然后执行adb命令adb shell dumpsys gfxinfo com.xiaomi.shop(...转载 2018-05-02 17:14:55 · 4791 阅读 · 0 评论 -
Android 开机速度优化-----ART 预先优化
Android开机速度我们知道在L及以后的版本中,当系统升级后,或者恢复出厂设置后,或者第一次开机,其启动时间往往很长,短的有3-4分钟,而长的多达10分钟,那么是原因导致的,我们将分析其原因.ART 的前世今生我们知道,在Android的最初的几个版本,Android的app 运行在Dalvik中,完全是解释性执行.在Android2.2中,Google把转载 2016-05-20 17:39:35 · 7722 阅读 · 1 评论 -
Android内核开发:在源码树中添加新的app应用
本文是《Android内核开发》系列的第十二篇文章,上一篇文章介绍了如何从源码中删除出厂的app应用,本文则在此基础上,详细介绍一下如何在Android内核源码树中添加一个新的app应用。网上也有介绍怎么在源码中添加新的app应用的博文,但大都数只介绍了不含有jni本地代码的app的添加方法,本文会更加全面地介绍三种不同类型的app应用如何添加到Android内核源码树中编译。转载 2016-05-13 20:32:02 · 1365 阅读 · 0 评论 -
Android内核开发:理解和掌握repo工具
由于Android源码是用repo工具来管理的,因此,搞Android内核开发,首先要搞清楚repo是什么东西,它该怎么使用?作为《Android内核开发》系列文章的第二篇,我们首先谈谈对repo工具的理解和使用。1. repo是什么?repo是一种代码版本管理工具,它是由一系列的Python脚本组成,封装了一系列的Git命令,用来统一管理多个Git仓库转载 2016-05-13 19:54:00 · 551 阅读 · 0 评论 -
Android内核开发:系统编译输出的镜像文件
本文是《Android内核开发》的第四篇文章,主要介绍一下源码编译输出的几个重要的镜像文件,这里把bootloader源码和Linux内核源码的编译输出也算在其中,因为毕竟Android系统缺少了这两个部分在设备上也是跑不起来的。1. MLO, u-boot.img 任何操作系统的启动,都离不开“引导程序”,比如桌面Windows系统的BIOS、桌面Linux系转载 2016-05-13 19:59:34 · 2273 阅读 · 0 评论 -
Android内核开发:系统分区与镜像文件的烧写
本文是《Android内核开发》系列的第五篇文章,本文重点介绍如何把编译输出的镜像文件烧写到Android设备中。玩过刷机的朋友肯定对fastboot这个工具并不陌生,它是Android SDK中提供的一种开发工具,支持通过USB线将手头的镜像文件更新/烧录到Android设备中,常用的fastboot烧录过程如下:12转载 2016-05-13 20:01:54 · 3398 阅读 · 0 评论 -
Android内核开发:图解Android系统的启动过程
本文是《Android内核开发》系列的第六篇文章,前面的几篇文章介绍了Android内核开发相关的基础知识,包括:Android源码的下载、版本和分支介绍、编译和烧写等等,从本文起就要开始真正地进行Android内核的学习及实战了。学习任何软硬件系统,研究系统启动过程都是一种非常有效地起步手段,搞Android内核开发也不例外。网上有很多文章对Android启动相关代码进行分析转载 2016-05-13 20:02:49 · 524 阅读 · 0 评论 -
Android内核开发:学会分析系统的启动log
本文是《Android内核开发》系列的第八篇文章,本文主要关注如何分析Android系统的启动log,学会通过搜索重要的TAG标签,找到Android启动过程中的重要节点。要学会分析系统的启动log信息,首先得了解Android系统的启动过程,建议先阅读《Android内核开发:图解Android系统的启动过程》这篇文章,它详细介绍了Android系统的启动过程。其次,你需要知转载 2016-05-13 20:22:18 · 769 阅读 · 0 评论 -
Android内核开发:系统启动速度优化
在学习新知识的过程中,我一直很推荐结合实战任务去学习,只有经历实战,才能加深对理论知识的理解。《Android内核开发》系列已经写了八篇了,本文就结合前面的内容,给大家布置一个实战任务: 优化Android系统的启动速度。这里我简单介绍一下优化的基本思路和涉及的文件,具体细节由大家自己在实践去摸索,提高自己Google能力和解决问题的能力。Android系统转载 2016-05-13 20:23:46 · 2102 阅读 · 0 评论 -
Android内核开发:浅析APK的安装过程
本文是《Android内核》开发系列文章的第十篇,上一阶段,我们重点学习和分析了Android系统的启动过程,那么,从本文开始,准备介绍一下如何从Android源码中添加、修改、删除系统级别的APP应用。作为开篇,我们先从简单的理论入手,介绍一下Android系统中的APK文件究竟是个什么东西?它是如何安装到系统中去的?我们在学习和了解一项新事物的时候,最快速的方法往往是与已知转载 2016-05-13 20:24:43 · 500 阅读 · 0 评论 -
Android内核开发:从源码树中删除出厂的app应用
本文是《Android内核开发》系列的第十一篇文章,本文重点介绍如何从Android源码中删除出厂的app应用。上一篇文章中提到过,系统出厂的app应用,其实就是被安装到/system分区的app,这些app在Android源码树中被编译后打包到了system.img镜像中,系统启动时,以只读的方式挂载/system目录,因此,非root手机用户是无法删除这些app的。转载 2016-05-13 20:29:07 · 685 阅读 · 0 评论 -
Android内核开发:为什么刷机后系统第一次启动会很慢?
转自:http://ticktick.blog.51cto.com/823160/1677216在做Android内核开发的过程中,我们会发现,每次编译完系统源码,烧录到设备/手机中后,第一次启动都会很慢很慢,要好几分钟甚至十几分钟,为什么会出现这样的现象呢?系统刷机后第一次启动与后面再次启动有什么不同呢?要解答这个问题,首先我们需要了解一下Android Dalvik转载 2016-05-13 19:32:52 · 918 阅读 · 0 评论