![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
android
文章平均质量分 78
干一行,爱一行
white
展开
-
androidP Surface到SurfaceFlinger -->surface -> BufferQueue(一)
BufferQueue前言介绍BufferQueue::createBufferQueue前言结合前面的一篇文章创建Surface, 我们知道最后会调用到SurfaceFlinger的CreateLayer() 方法,然后会层层调用到 BufferQueue::createBufferQueue(),今天我们就来理理BufferQueue。介绍首先我们要知道BufferQueue的大致工作原理,一个surface会和一个Producer及生产者App进行绑定去产生view数据,然后会通过onFram原创 2021-12-28 22:04:19 · 1797 阅读 · 0 评论 -
androidP Surface到SurfaceFlinger -->创建Surface (二)
创建Surface (二)前言SurfaceFlinger createLayer前言我们接着androidP Surface到SurfaceFlinger -->创建Surface (一)来看,当new SurfaceControl之后在其构造函数内都做了什么?这一步跟下去就到了SurfaceFlinger了。SurfaceFlinger createLayer对于上层应用所建立的Surface对应到SurfaceFlinger 就是 createLayer我们来跟代码吧,还是从 Surface原创 2021-12-21 21:21:16 · 1305 阅读 · 0 评论 -
androidP Surface到SurfaceFlinger -->创建Surface (一)
创建Surface前言ViewRootImpl创建Surface前言 我们前面已经分析过Activity启动如何去连接到SurfaceFlinger了,接下来就看Activity的Surface的创建到SurfaceFlinger的过程。ViewRootImpl创建Surface 在调用了WindowManagerGlobal的addView方法之后会首先去创建一个ViewRootImpl将View和Window关联起来,在new ViewRootImpl的时候就创建了一个Surface对象原创 2021-12-20 20:56:42 · 2836 阅读 · 0 评论 -
androidP Surface到SurfaceFlinger --> Activity 连接 SurfaceFlinger(二)
Activity 连接 SurfaceFlingerSurfaceSession持有SurfaceComposerClientSurfaceSession持有SurfaceComposerClient紧接这上面段落继续跟踪SurfaceComposerClient,我们从Activity 连接 SurfaceFlinge(一)知道,在addWindow的时候都会去重新创建一个Session去和SurfaceFlinger进行连接,在Session的构造函数里面就会去new SurfaceComposer原创 2021-12-17 20:46:30 · 1227 阅读 · 0 评论 -
androidP Surface到SurfaceFlinger --> Activity 连接 SurfaceFlinge(一)
Activity 连接 SurfaceFlinger前言一、Activity 连接 SurfaceFlinger前言一直想要分析一下surface 的创建到SurfaceFlinger之间的关系,由于它们之间牵扯的东西比较多,终于感觉理的差不多了,记录一下。一个应用想要完成一个View的显示大致需要以下三部1、应用需要先和SurfaceFlinger建立通道,及连接SurfaceFlinger 拿到SurfaceFlinger 的远端代理。2、向SurfaceFlinger申请去创建Surface原创 2021-12-15 21:16:42 · 3278 阅读 · 0 评论 -
Android 面试问题总结
1、Android是如何解决binder不能进行大数据跨进程传递的?原创 2021-11-29 20:05:08 · 2815 阅读 · 0 评论 -
camera 之 createCaptureSession
camera 之 createCaptureSession1、createCaptureSession 参数解析2、createCaptureSession 流程分析3、时序图1、createCaptureSession 参数解析1.1、结合上一篇 [openCamera](https://blog.csdn.net/lisiwei1994/article/details/119999793?spm=1001.2014.3001.5501) 成功之后就会通知回调到 CameraDevice.StateC原创 2021-08-31 20:57:02 · 3586 阅读 · 3 评论 -
camera 之 openCamera
openCameraopenCamera() 方法参数解析openCamera() 代码跟踪openCamera() 方法参数解析1、 打开 camera我们可以直接调用系统service,获得CameraManager,然后调用openCamera();CameraManager cameraManager = (CameraManager) mContext.getSystemService(Context.CAMERA_SERVICE);cameraManager.openCamera(mC原创 2021-08-30 20:50:44 · 4594 阅读 · 0 评论 -
Camera hal 之 CameraProvider
Camera hal 之 CameraProvider 一、CameraProvider的作用二、CameraProvider的启动、初始化一、CameraProvider的作用cameraProvider的主要作用就是向下调用CameraModule,通过CameraModule 来和 Camera driver 交流,向上通过binder会被framework java 层的CameraProviderManager调用,然后CameraProviderManager 最终会被CameraServi转载 2021-08-26 10:28:48 · 2590 阅读 · 0 评论 -
camera hal 之 CameraModule
camera之 hal CameraModuleCameraModule的作用加载camera hal soCameraModule的作用 我理解的CameraModule的主要作用就是承上启下的作用,在Android 开源规则下hal层各个厂商可以根据知识产权将自己的hal层实现不对外公开,这个CameraModule就是负责加载厂商hal camera so,然后调用相关方法的。加载camera hal so 在 CameraProvider 中持有 CameraModule的对象,在Cam原创 2021-08-24 20:14:41 · 1387 阅读 · 0 评论 -
AndroidP RRO overlay (四)
AndroidP RRO overlay (四)应用重新创建之后,加载overlay资源应用重新创建之后,加载overlay资源我们overlay原理二和三,分别说明了应用createIdmap和如何通知重启应用,这篇就紧接着分析,应用重启之后如何去调用overlay apk的资源。我们这边假设havc.apk在res/values/colors.xml里面定义了一个color值为<color name="havc_icon">#fff4b400</color>然后在 h原创 2021-01-19 13:57:37 · 942 阅读 · 1 评论 -
AndroidP RRO overlay (三)
原理二应用重新加载资源createIdmap之后的事应用重新加载资源createIdmap之后的事原创 2021-01-18 20:15:05 · 957 阅读 · 0 评论 -
AndroidP RRO overlay (二)
RRO 原理1、create Idmap1、create Idmap我们 AndroidP RRO overlay (一)中介绍了怎么使用命令来替换overlay,那接下来就看看执行这个 adb shell cmd overlay enable --user 0 com.android.car.hvacOverlay 之后做了哪些事。接收这个命令的类是frameworks/base/services/core/java/com/android/server/om/OverlayManagerShe原创 2021-01-07 19:27:05 · 1411 阅读 · 1 评论 -
AndroidP RRO overlay (一)
Android RRO overlay1、Android P overlay1.2 静态 overlay原理1.3 动态overlay1、Android P overlay新年第一帖,最近又开始接手Android overlay了,说实话一开始接手overlay的时候我是拒绝的,因为我不是很喜欢和界面打交道,但是总是要恰饭的,结果越干还越有意思,这里就给大家分享一下,我的心得。干overlay的应该都知道,android 的overlay分为静态overlay(SRO)和动态overlay(RRO),原创 2021-01-07 16:32:04 · 1987 阅读 · 4 评论 -
Android P 分屏显示
分屏显示一、前提概要:二、实现概要:2.1 我们要一启动左边显示仪表os、右边显示ivi.一、前提概要:我是做车机ivi开发的,目前有个需求是仿特斯拉的娱乐系统显示,用一个大屏左边来显示仪表os、右边来显示ivi。二、实现概要:我的ivi是基于Android os来发的,所以分屏方案也是基于Android的应用分屏来实现的。但是原来Android的应用分屏不能完全满足我们的要求:1、我们要一启动左边显示仪表os、右边显示ivi。2、左右分屏大小要固定,不能拖拽,不支持用户进入recent vi原创 2020-11-03 19:34:33 · 4237 阅读 · 5 评论