- 博客(983)
- 资源 (37)
- 收藏
- 关注
转载 Android 性能优化的一些小tip
和你一起终身学习,这里是程序员Android本篇文章主要介绍Android开发中的部分知识点,通过阅读本篇文章,您将收获以下内容:一、Pinner service 配置优化二、关闭 WIFI Debugging优化三、默认关闭BT、关闭自动旋转四、默认值使用32为程序五、AMS 部分的参数调整六、屏幕输出帧率优化七、滑动帧速率低问题优化方案八、文件系统优化九、关闭 Dm_verity 功能十、优化 Touch boost 功能。
2025-07-17 08:20:44
22
转载 OpenHarmony Camera源码分析
本文首先对相机预览、拍照和录像功能的应用层进行了代码分析,其次对框架层的流程进行了梳理,最后再对框架源码进行分析。原文链接:至此,本篇已结束。转载网络的文章,小编觉得很优秀,欢迎点击阅读原文,支持原创作者,如有侵权,恳请联系小编删除,比如:文章底部留言,12小时内必删,欢迎您的建议与指正。
2025-07-16 08:11:12
18
转载 高德地图导航功耗场景优化
和你一起终身学习,这里是程序员Android本篇文章主要介绍Android开发中的部分知识点,通过阅读本篇文章,您将收获以下内容:一、测试现象二、分析三、问题根源研究四、源码分析并新增日志五、问题发现与解决。
2025-07-11 08:06:41
40
转载 Android 多摄知识点
Android 9通过一个新的逻辑相机设备引入了对多相机设备的API支持,该逻辑相机设备由指向同一方向的两个或多个物理相机设备组成。逻辑摄像机设备作为单个CameraDevice / CaptureSession公开给应用程序,允许与HAL集成的多摄像机功能进行交互。应用程序可以选择访问和控制基础物理相机流,元数据和控件。图1。多相机支持在此图中,不同的摄像机ID用颜色编码。该应用程序可以同时从每个物理相机流式传输原始缓冲区。也可以设置单独的控件并从不同的物理摄像机接收单独的元数据。
2025-07-10 08:03:48
18
原创 功耗问题之唤醒锁分析
和你一起终身学习,这里是程序员Android本篇文章主要介绍Android开发中的部分知识点,通过阅读本篇文章,您将收获以下内容:一、发现问题二、解决问题三、验证问题四、最佳实践是API 中的一种机制。可让开发人员在设备显示屏关闭(无论是由于系统超时还是用户按下电源按钮)之后,继续让CPU保持运行状态。您的应用通过acquire()使用标志调用来获取部分唤醒锁。如果部分唤醒锁 在您的应用程序在后台运行时被长时间Hold,则会stuck。
2025-07-08 07:55:31
712
原创 Android App 卡顿分析
为了帮助您提高应用程序质量,Android会自动监视您的应用程序是否有空,并在Android生命危险仪表板中显示信息。有关如何收集数据的信息,请参阅文档。如果您的应用程序出现问题,本页提供诊断和解决问题的指导。Android生命危险仪表板和Android系统会跟踪使用UI Toolkit的应用程序的渲染时间统计信息(应用程序的用户可见部分是从Canvas或绘制的)。如果您的应用程序不使用UI Toolkit,就像使用VulkanUnityUnreal或OpenGL构建的应用程序一样,则在。
2025-07-07 08:04:55
316
转载 MTK camera点亮流程介绍
Camera的框架分为Kernel部分和hal部分,其中kernel,负责具体型号的sensor的id检测,上电,以及在previewcapture初始化3A等等功能设定时的寄存器配置;isp driver,通过DMA将sensor数据流上传;HALimageio,主要负责数据buffer上传的pipe;drv,包含imgsensor和isp的hal层控制;feature io,包含各种3A等性能配置;这篇内容主要介绍开机过程中以及上电流程等内容。通过上面的代码流程,可以知道上开机时,
2025-07-02 07:55:57
25
转载 MTK Camera HAL到驱动的流程总结
Kernel部分:image sensor driver——负责具体型号的sensor的id检测,上电,以及在preview、capture、初始化、3A等等功能设定时的寄存器配置;ISP driver——通过DMA将sensor数据流上传;Hal部分:imageio——主要负责数据buffer上传的pipe;drv——包含imgsensor和isp的hal层控制;feature io——包含各种3A等性能配置;来看一张图,大致来了解一下Camera的整体架构。
2025-07-01 07:25:13
52
原创 Camera 启动trace分拆详解
和你一起终身学习,这里是程序员Android经典好文推荐,通过阅读本文,您将收获以下知识点:一、Camera 启动流程概览二、Launcher 跟Camera APP 交互三、Camera app 与FWK Camera Service 交互四、Camera FWK 与 Camera HAL 交互五、Camera FWK、Camera app、SF 交互送显。
2025-06-26 07:55:27
856
转载 Android ANR 无响应问题经典好文
ANR的问题分析,说简单有时候也挺简单,说复杂有时候确实能让人分析的抓狂,有时候ANR问题只是平台表现出来的一种现象,可能是某种预警信号,深入分析就要工程师看对Android系统的了解程度了。博主曾经处理过一个不规律的anr的问题,产品在烧机一段时间后,会概率性触发ANR问题,Check了很多次log发现IO比较高,但是log基本没有什么其他异常的地方,最后经过多次烧机尝试和分析,发现原因是某些平台的EMMC因为寿命的原因发生老化导致读写速率变低,从而导致IO变高,更换EMMC后问题解决。
2025-06-19 08:06:36
43
转载 Camera功耗分析与拆解实战
和你一起终身学习,这里是程序员Android经典好文推荐,通过阅读本文,您将收获以下知识点:一、Camera功耗分析和拆解二、音频相关功耗。
2025-06-17 07:56:09
46
原创 遇到手机功耗问题怎么办?
和你一起终身学习,这里是程序员Android本篇文章主要介绍 Android 开发中的部分知识点,通过阅读本篇文章,您将收获以下内容:一、功耗是啥?二、遇到功耗问题我们该怎么办?三、功耗问题重点 抓log四、MTK 平台功耗 log 抓取方法五、SPRD 平台功耗 log 抓取方法六、高通平台功耗log抓取方法七、记录异常时间段/点八、抓取 bugreport九、抓取 5份 top log信息十、记录平均电流图。
2025-06-13 07:55:49
656
原创 手机功耗问题分析笔记
待机功耗很容易出现问题,并且很难理清,因为其涉及到这些不确定因素。1.先花时间把现象理清,到底在什么样的环境下复现。2.多做几个实验,给出清晰的问题描述、问题复现条件、电流波形图。3.提供关闭 modem 的log。
2025-06-12 08:05:50
576
转载 相机知识储备详解
上一篇文章介绍了如何调用系统相机进行拍照裁剪等功能,一般情况下这些已经能满足我们的需求了。但是在有些场景和特殊需求下,比如要进行人脸检测、要不间断地抓取多张照片等等,那就需要使用原生Camera来进行开发啦这里并不打算讲如何用代码去实现,而是先给小伙们介绍相关的知识点,等对这些知识有了大致了解后在动手去写,这样既能有目的的去写又能加深对知识点的理解本篇文章主要给大家讲解进行Camera开发需要用到的类和方法,以及在开发过程中遇到的方向问题的分析Camera。
2025-06-11 08:03:50
52
转载 Android 相机拍照流程流程介绍
camera2 API 的加入是从AndroidV5.0(21)开始的,因此我们使用Camera2应该是在Android 5.0(含5.0)之后。同时,对于Android6.0我们需要有动态权限的管理。这两点应该是使用Camera2使用前的最基本认知。Android 5.0对拍照API进行了全新的设计,新增了全新设计的Camera v2 API,这些API不仅大幅提高了Android系统拍照的功能,还能支持RAW照片输出,甚至允许程序调整相机的对焦模式、曝光模式、快门等。下面不做过多介绍了,直接开撸了。
2025-06-10 08:29:41
79
转载 MTK 相机架构介绍
首先看下mtkcam的整体框架图如下包含了很多的内容,其中camera的打开流程也贯穿在其中,从Camera APK一层层的系统调用到driver再到Hardware层,这篇文章主要从Pipeline开始介绍打开camera的流程,向上暴露的接口调用,实现是在中;用于去操作各个的操作,实现在中;Camera会话的接口;底层对上层的CallBack接口;用于管理,包括查找,打开,关闭等。是HAL3核心架构,对上需要开放对Pipeline创建 & 操作的API,对下需要建立Pipeline& 管理。
2025-06-09 08:42:22
98
原创 手机开关机、重启时间优化总结
和你一起终身学习,这里是程序员Android经典好文推荐,通过阅读本文,您将收获以下知识点:本篇文章主要介绍Android开发中部分知识点,通过阅读本篇文章,您将收获以下内容:一、zygote,预加载class、resources二、开机动画进程 bootanimation三、SystemServer.java 代码逻辑四、非必要服务请放在system_server进程外启动五、kernel init 时间过长六、排查驱动设备初始化是否完成七、apk dex2oat时间过长。
2025-06-06 07:56:22
840
原创 Bugreport 分析手机耗电简介
和你一起终身学习,这里是程序员Android本篇文章主要介绍Android开发中的部分知识点,通过阅读本篇文章,您将收获以下内容:一、BugReport 总体概览二、电池电量变化三、Doze 模式分析四、通过索尼的CkBugreport分析Log五、手机端抓取bugreport方法。
2025-06-05 08:07:14
494
转载 Android 性能之内存优化
和你一起终身学习,这里是程序员Android经典好文推荐,通过阅读本文,您将收获以下知识点:一、Heap Snapshot二、Heap Viewer三、MAT四、Allaction Tracking五、TraceView六、LeakCanary七、Lint。
2025-06-03 07:58:44
31
转载 高通Camera驱动点亮流程
和你一起终身学习,这里是程序员Android经典好文推荐,通过阅读本文,您将收获以下知识点:一、Kernel 代码移植二、Vendor 代码移植三、扩展。
2025-05-30 08:05:35
109
原创 Notification 通知消息使用详解
通知是应用向用户显示的消息提示,当发送通知时,通知将先以图标的形式显示在通知区域中。用户可以打开下拉通知栏查看通知的详细信息。通知区域和下拉通知栏均是由系统控制的区域,用户可以随时查看。通知在Android用户界面的一个重要部分,其使用方法请看以下内容:通知区域中的通知下拉通知栏中的通知1.实现效果自定义通知效果图2.实现代码/*** 自定义样式通知* **//**** 自定义Remoteview* **/
2025-05-20 09:04:00
971
原创 Android Intent 消息传递使用详解
Intent是一个消息传递对象,主要用于组件之间的通讯,例如:启动Activity、启动Service、传递Broadcast等。Intent 主要功能流程图如下:Intent 主要功能流程图对象是Intent对象的包装器。的主要目的是授权外部应用使用包含的Intent,就像是它从您应用本身的进程中执行的一样。主要应用于以下场景1.通知2.应用小部件AppWidget3.定时任务/*** 2.自定义 发送短信* **/// 修改 Intnent 选择器Tittle。
2025-05-16 09:02:56
751
转载 Android 主副屏差异显示实现方法
和你一起终身学习,这里是程序员Android经典好文推荐,通过阅读本文,您将收获以下知识点:一、设置Simulate secondary displays二、实现副屏异显三、实现效果Android SDK 提供了Display类,实现在主屏幕之外的扩展屏幕上显示不同于主屏幕的UI,而扩展屏幕上的UI显示,实质上是显示了一个系统级别的Dialog,我们可以将自已的View加入到此Dialog中进行显示。扩展屏可以有一个或超过一个,实际的应用中需要底层驱动的支持。
2025-05-14 07:55:16
326
转载 MTK相机bringup经典好文推荐
Camera 的框架分为 Kernel 部分和 hal 部分,其中kernel部分主要有两块:image sensor driver,负责具体型号的sensor的id检测,上电,以及在preview、capture、初始化、3A等等功能设定时的寄存器配置;isp driver,通过DMA将sensor数据流上传;HAL层部分主要有三部分组成:imageio,主要负责数据buffer上传的pipe;drv,包含imgsensor和isp的hal层控制;feature io,包含各种3A等性能配置。
2025-05-12 07:55:46
83
原创 Camera内存相关知识点梳理
从Camera 角度理解Total RAM分为:Free(剩余内存)、Others(非Camera 模块)、Camera APP、cameraserver、camerahalserver、以及Linux Kernel。另外,整个手机不只有Linux,还有其他作业系统同时运行,所以也会切走一块Reserved,比如:modem。内存占用规律 VSS >= RSS >= PSS >= USS。
2025-05-09 08:03:23
419
转载 Handler 使用方法介绍
Handler是Android中用来更新UI 的一套消息处理机制。Handler允许线程间发送Message或Runnable对象进行通信。在Android中UI修改只能通过UI Thread,子线程不能更新UI。如果子线程想更新UI,需要通过Handler发送消息给主线程,进而达到更新UI的目的。Handler负责发送Message到Looper负责从遍历Message,然后直接把遍历的消息回传给Handler自己,通过Handler自身的处理更新UI等操作。主线程、子线程间通信简单流程。
2025-05-06 14:31:01
162
原创 SharedPreferences 使用详解
是Android的一个接口类,是Android数据存储(保存内部)的一种方法。主要以*.xml的形式保存在Android/data/data/com.***包名/shared_prefs下,BooleanIntFloatLongString。
2025-05-05 17:27:23
887
原创 四大布局使用详解
和你一起终身学习,这里是程序员Android本篇文章主要介绍Android开发中的部分知识点,通过阅读本篇文章,您将收获以下内容:一、LinearLayout 线性布局二、RelativeLayout 关系布局三、FrameLayout 帧布局四、TableLayout 表格布局在Android中,有界面存在的地方就会有布局存在,布局对于Android来说十分重要。Android。
2025-05-04 13:43:59
571
原创 Android 广播使用详解
在了解广播之前,我们先了解Broadcast继承关系 ,BroadcastBroadcast是Android四大组件之一,是一种广泛运用在应用程序之间异步传输信息的机制。Broadcast本质上是一个Intent对象,差别在于Broadcast可以被多个处理。是一个全局监听器,通过它的可以过滤用户想要的广播,进而进行其它操作。默认是在主线程中执行,如果方法处理事件超过10s,则应用将会发生,此时,如果建立工作线程并不能解决此问题,因此建议:如处理耗时操作,请用Service代替。
2025-05-03 13:33:40
1380
原创 Service使用详解
首先我们先了解一下Service的继承关系,方便我们更好的了解Service。ServiceService是Android四大组件之一(Activity活动,Service服务,内容提供者,广播),与Activity相比,Service是运行在后台,无用户界面,用户无法看到,Activity则是运行在前台,用户可以看得见。Service主要用于组件之间交互(例如:与Activity进行交互)、执行后台任务等(例如下载文件,播放音乐等)。Service在主线程运行时长不能超过20s,否则会出现。
2025-05-02 08:45:35
1116
原创 五一劳动节快乐,今日牛马不加班,了解五一怎么来?
这个节日见证了工人阶级从"会说话的机器"到享有基本权利的历史转变,提醒着劳动者权益的来之不易。如今,全球劳动者仍在为同工同酬、反职场歧视、改善劳动条件等目标持续努力。
2025-05-01 17:11:20
266
原创 Activity使用详解
和你一起终身学习,这里是程序员Android本篇文章主要介绍Android开发中的部分知识点,通过阅读本篇文章,您将收获以下内容:一、Activity 概览二、Activity 生命周期三、Activity 的注册方法四、App的MainActivity五、Activity 的启动方法六、Activity结束方法七、Activity状态保存,恢复的方法八、面试中经常问到题型九、参考文献。
2025-04-30 07:55:51
868
原创 相机启动,切换,拍照,人脸解锁等systrace拆解分析总结
和你一起终身学习,这里是程序员Android经典好文推荐,通过阅读本文,您将收获以下知识点:一、Camera 启动流程trace关键字二、相机 模式切换流程trace 关键字三、退出相机Trace 关键字四、相机拍照 Trace 关键字五、人脸解锁Trace 关键字拆解六、Camx trace 开关七、手机自带抓去systrace 方法。
2025-04-28 08:12:13
923
转载 Systrace 分析应用启动时间的三种方法
和你一起终身学习,这里是程序员Android经典好文推荐,通过阅读本文,您将收获以下知识点:一、看这篇文章收获的关键字二、方法一三、方法二四、方法三。
2025-04-27 07:55:16
52
转载 Camera 工作原理及基础知识介绍
Raw Sensor输出的Data格式为Raw,图像的效果处理使用BB端的ISP,BB端接收Raw data后进行一系列的图像处理(OB,Shading,AWB,Gamma,EE,ANR等),效果方面由BB端控制,需要针对不同的模组进行效果调试,Raw sensor是目前的主流,数据量比YUV Sensor小(RAW10 格式的sensor 1个pixel 10个bit)使用平台ISP处理,能支持较大的size。不过,相位对焦并不是那么完美,它对光线的要求就比较高,在弱光拍摄环境下,相位对焦就无能威力了。
2025-04-26 12:12:29
194
原创 相机in-sensor zoom功能介绍
In-sensor zoom 功能是一种通过图像传感器本身的技术实现变焦的解决方案,主要应用于智能手机、数码相机等设备中。它与传统的光学变焦和数码变焦不同,其核心在于直接利用传感器的物理特性或图像处理技术来模拟变焦效果,而非依赖镜头组的物理移动或单纯裁剪放大图像。核心原理高分辨率传感器裁剪设备使用超高分辨率的图像传感器(例如 48MP、64MP 或更高),在拍摄时仅截取传感器中心区域的像素(例如 12MP 部分),通过“裁剪”实现等效变焦效果。例如,若传感器分辨率足够高,2倍裁剪后仍能输出清晰的照片。
2025-04-25 07:54:54
1592
转载 相机成像原理之sensor篇
和你一起终身学习,这里是程序员Android经典好文推荐,通过阅读本文,您将收获以下知识点:一、Sensor的硬件结构二、Sensor的曝光。
2025-04-24 07:55:29
235
android手机中MP3播放器的实现
2012-07-20
android版本的天气预报
2012-07-09
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人