
Android
文章平均质量分 83
And乔
每天整理一小时
展开
-
Audio 加载hal (loadHwModule)
Audio 加载hal (loadHwModule)近期在整理audio问题过程中不可避免的会涉及到一些流程处理,此前一些流程细节没有详细跟踪过,趁着这次机会,将看到的一些内容整理出来,方便后续查阅:1. audio.primary.xx.so加载audio的Hal层有蛮多内容,其中主要是:audio.primary.[ro.hardware].so 这里记录下该库被加载的流程;1.1 load module调用AudioFlinger::loadHwModule(const char *name原创 2021-09-14 23:17:58 · 1790 阅读 · 0 评论 -
simpleperf 使用记录
simperf 使用记录近期处理CPU loading过高问题,使用simpleperf生成火焰图的方式进行分析,相较于以前查看record的方式直观了不少,方法记录如下:1. simpleperf 命令查看通用开源工具一般都可以通过 -h的方式查看其命令支持情况:console:/ # simpleperf -hUsage: simpleperf [common options] subcommand [args_for_subcommand]common options:-h/–help原创 2021-07-01 19:54:26 · 3540 阅读 · 2 评论 -
AndroidP 开机自启动程序
AndroidP 开机自启动程序1. codemain.c#include <stdio.h>int main() { int i = 10; while (i--) printf("test_for_customer, this bin is built for running on boot\n"); return 0;}rc文件service just_test /system/bin/test_for_customer原创 2020-12-21 22:47:20 · 359 阅读 · 1 评论 -
Android P环境 bootchart使用
Android P环境 bootchart使用文章目录Android P环境 bootchart使用1. 功能说明2. 使用说明2.1 录制:2.2 工具解析2.3 示例图片3. Android P 中相关 code3.1 在init.rc中默认打开和关闭bootchart功能3.2 bootchart.cpp源码查看3.3 bootchart部分readme介绍4. 附录1. 功能说明bootchart 是通过采集/proc中的数据,将系统启动过程记录下来,通过host端工具将其解析为可视化图表的工原创 2020-06-13 20:34:59 · 1944 阅读 · 1 评论 -
图片加载功能实现
一、考虑方向关于图片加载功能,目前针对如下几个场景考虑性能:避免主线程因加载图片导致block,并需要考虑涉及到快速加载多张图片的情形;==>所以此处加载图片需要开工作线程处理,最好可以使用线程池;用户使用时有反复加载某张图片的场景;==>所以添加buffer存放最近有加载过的图片,该buffer使用LRU算法更新;大图片的加载会耗时很久,而在此项目800*480分辨率屏...原创 2019-04-15 22:57:07 · 473 阅读 · 0 评论 -
photo player 显示 ☞ 列表选中项的处理
photo player 显示☞列表选中项的处理一、需求需要显示一个图片列表,可以左右滑动,点击则在大图显示该图;可以在界面上显示大图,可以左右滑动切换图片,可以支持zoom、move、rotate;大图与图片列表相互关联:点击列表item可以在show对应大图;大图切换则列表保持该Item在列表中间位置;对于大图显示的图片添加红框标记(item的两个背景);效果如此图:...原创 2019-04-15 22:18:35 · 272 阅读 · 0 评论 -
问题记录:图片加载快速滑动闪动问题(Android-APP)
问题记录:图片加载快速滑动闪动问题此问题本身处理起来还算简单,但是因为顺手做了两部分code优化,导致此问题多花费了一些精力,这里记录下,方便后续查看前置条件介绍:使用recycleview显示图片列表;多线程加载图片,获取后给到UI线程显示;问题描述:快速滑动图片列表,后续加载的图片会出现闪烁,且在列表中会发现有重复情况;修复上述问题后,发现viewPager和Recycle...原创 2019-04-15 00:05:31 · 1693 阅读 · 0 评论 -
FastRVC功能记录
FastRVC功能1. 功能需求开机阶段需要支持倒车功能;输入为AHD鱼眼摄像头需要做矫正和后续数据计算;需要支持轨迹和雷达显示功能;1.1 功能实现方式评估从结构方面考虑支持三种实现方式:使用arm2倒车,输入输出和轨迹雷达都是现成的;需要做两个处理:1. 鱼眼矫正;2. 采集数据做后续运算;目前这部分在系统阶段统计数据需要一个A53 100%的算力,arm2为arm9实现,算力差异较大(差不多是1/5的样子);使用一个A53核独立出来处理此部分此功能暂时没有实现过,需要考虑核间原创 2020-09-08 22:52:00 · 1543 阅读 · 0 评论 -
恢复出厂设置 卡住10分钟问题
恢复出厂设置 卡住10分钟问题文章目录恢复出厂设置 卡住10分钟问题1. 信息初步收集1.1 现象描述1.2 问题概率以及实验情况确认2. 分析过程2.1 确认recovery log信息情况2.2 log分析2.2.1 recovery 重启2.2.2 recovery 清除操作2.2.2.1 block 进入逻辑:2.2.2.2 中间调度逻辑:2.2.2.3 block 退出逻辑3. 问题原因以及处理3.1 原因3.2 处理3.3 记录4. 涉及模块4.1 mmc子系统架构4.2 调度策略处理1.原创 2020-07-27 21:08:00 · 2499 阅读 · 4 评论 -
系统反复重启--RescueParty触发recovery记录
重启进入recovery reboot,反复循环文章目录重启进入recovery reboot,反复循环前言1. 问题现象:2. 分析过程2.1 串口打印初步分析:第一步:查看重启原因:第二步:根据刚才的信息继续往前看init进程的操作第三步:确认system_server信息:2.2 recovery入口梳理2.3 对比验证实验2.4 logcat信息分析2.4.1 抓取logcat2.4.2 logcat信息分析2.4.2.1 查看system_server:2.4.2.2 搜索/system/bin原创 2020-07-09 23:34:52 · 7702 阅读 · 0 评论 -
Android APK 签名问题
前言记录APK签名方式1. 源码获取key 和 签名工具在源码中找到证书信息:/aosp/build/target/product/secutiry/platform.pk8/aosp/build/target/product/secutiry/platform.x509.pem源码中提供对应的jar/aosp/prebuilts/sdk/tools/libs/signapk.jar给apk添加签名:java -jar signapk.jar platform.x509.pem原创 2020-07-05 11:17:44 · 441 阅读 · 0 评论 -
CPU负载均衡之EAS
前言记录一个问题点,三个action;本文主要记录linux 负载均衡策略的发展:EAS 概念说明为什么需要,或者说之前的框架遇到了什么问题,所以才需要新的内容?框架变化即linux中对于TASK调度、负载跟踪和调节的处理;1. EASEAS 即 Energy Aware Scheduling:EAS is an enhancement to Linux power management, placing CPU power control directly under the Lin原创 2020-06-29 21:03:58 · 4253 阅读 · 0 评论 -
问题记录:模组屏调试点亮
项目场景:项目开展初期,硬件准备阶段(方案已经设计完成,需逐步实现项目各个模块功能):第一版硬件已经拿到,需逐步在该硬件方案调试各个模块;当前所需即点亮屏幕屏幕模组此方案采用分体模组屏幕,即屏幕与主控分离,甲方订立通信协议,屏幕和主控按照该协议进行通信逻辑设计,基本就是长这个样子:SOC通过I2C的方式与947通信,对其初始化,后续所有SOC发送的数据和指令均通过947传出;9247和948是一对IC,947将数据封装,948将数据解串;其中指令给到MCU做协议逻辑处理:控制背光原创 2020-09-28 23:44:53 · 895 阅读 · 0 评论