- 博客(24)
- 资源 (1)
- 收藏
- 关注
原创 Android 徒手抓取trace方式
4,可在下拉框快捷关闭trace跟踪。2, 进入开发者选项中系统跟踪。3,使能系统跟踪中选项。1, 打开开发者选项。
2024-03-18 13:33:59
464
原创 Camera metadata设计与应用
Android的Camera Metadata是一种数据结构,用于表示图像特征的参数,例如常见的曝光、AE、AWB、flash等参数。在新的Camera API2 / HAL3架构中,这种结构被用来在app-hal之间IPC传输,取代了原先的SetParameter()/GetParameter()方法。
2024-02-27 14:03:09
990
原创 解决C++ marked ‘override‘, but does not override
子类使用override标记了虚函数,编译报错marked ‘override‘, but does not override。原因是Basic未声明“virtual void func(int a)”,而子类Derive却使用override 标记该函数,故报错marked ‘override‘, but does not override。使用override关键字可以帮助编译器在编译时。在C++中,override关键字用于指示一个成员函数是。
2024-02-26 10:38:49
2738
原创 解决C++ undefined reference to vtable问题
在Android framework中做增删改查工作,C++代码经常出现“undefined reference to vtable” 报错。原因是创建类的对象时,它的虚函数表vtable 每一个函数都需要定义。使用简单样例代码模拟实际代码,更容易理解C++语法。如果代码中有创建类的对象时,需要定义该类中虚函数表中的每一个函数。
2024-02-21 19:36:21
923
原创 探索回溯算法
回溯算法是一个类似枚举的搜索尝试过程,主要是在搜索尝试过程中寻找问题的解。在包含问题的所有解的解空间树中,按照深度优先搜索的策略,从根结点出发深度探索解空间树。回溯算法的步骤包括以下步骤:1. 定义问题:确定问题的表述方式和解决问题的目标。2. 定义解空间:确定问题的解空间,即所有可能的解决方案。3. 状态表示:将问题的解空间表示为一棵树形结构,每个节点表示一个选择或决策。4. 状态扩展:将当前节点扩展成多个子节点,每个子节点表示一种可行的选择。5. 剪枝条件:定义约束条件,对解空间进行剪枝
2024-02-06 14:18:53
827
原创 解决Android开机之后不能打开camera
1,检测不到camera sensor目标数量,让camera provider进程自杀,使其重新probe;2,根因通常是存在其他器件干扰,也可能是依赖的ldo驱动初始完成慢于provider probe。Android完成开机,进入launcher界面,点击camera app 提示出错,不能出图。3,利用vendor.属性重启不保存特性,将probe次数存于vendor. 属性key中。2,一直probe不到就存在一直kill,不利于系统稳定,即增加probe次数;
2024-02-05 16:47:50
529
原创 解决Android camera 录像中拍照帧率不足30fps
Android camera 帧率问题,一步一步分析,找到问题根因,快来瞅一瞅。
2024-02-04 22:43:47
1442
原创 DFS和BFS基础算法框架
DFS算法(深度优先搜索算法)是一种用于遍历或搜索树或图的算法,广度优先搜索(BFS)是一种用于遍历或搜索树或图的算法。学习这两种算法,利于开拓思维,对于任何问题,都可以先采用这两种思维来进行思考。
2024-02-03 19:04:18
427
原创 解决camera后摄切前摄时间过长
实际工作中遇到有意思的camera性能问题,记录下。同事未能解决,咱友情帮忙,从camera性能问题常规思维出发,利用systrace强大工具,一步一步找出元凶。
2024-02-02 21:38:18
282
原创 GCC常用参数使用说明
GCC(GNU Compiler Collection)是一个开源的编译器,它可以编译多种编程语言的源代码,包括C、C++。本文主要讲述GCC常用参数,分类归纳,从学习认知层面更容易吸收。
2024-02-01 22:50:05
343
原创 Makefile初识与探索
简易理解是一种脚本语言,像shell脚本一样,需要有解释器(make)。虽说Makefile是脚本语言,学习的时候也应当按正常编程语言来学习,也是有变量,符号,语句,函数。
2024-01-28 22:53:59
2305
原创 Android SElinux认知与调试
Linux 内核资源访问控制分为 DAC(Discretionary Access Control,自主访问控制)和MAC(Mandatory Access Control,强制访问控制)两类。DAC基于“用户-用户组-其他”的“读、写、执行”的权限检查,进程理论上所拥有的权限与执行它的用户的权限相同,该管理过于宽松,如果获得 root 权限,可以在 Linux 系统内做任何事情。
2024-01-27 21:10:10
2133
原创 Android定位backtrace地址
Android实现了linux backtrace机制,“Segmentation fault”对应的信号是 signal 11 (SIGSEGV),会生成dump文件,路径为/data/tombstones。
2024-01-17 18:55:00
816
原创 解决insmod ko文件出现Exec format error
Android insmod ko,动态加载驱动#insmod XXX.koinsmod: failed to load XXX.ko: Exec format error 问题解决
2024-01-15 19:13:10
1806
原创 看看C语言函数返回值背后的故事
在学习C语言路途中,在各大书籍中,应该都会见到“函数返回值先拷贝到临时寄存器中,再将临时寄存器拷贝到调用函数变量中”。是不是先来个问号三连,为什么这样做呢?有什么好处?为什么不直接拷贝到调用函数变量中,减少拷贝呢?接下来从汇编角度一探究竟。
2024-01-14 12:26:22
785
Android抓取火焰图
2024-03-12
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人