1
▸
你说熟悉 Camera2,那从系统服务到出图,CameraManager、CameraDevice、CameraCaptureSession、CaptureRequest、CaptureResult 各自负责什么?它们之间是怎么串起来的?
2
▸
相机权限只是动态申请 CAMERA 就行了吗?Android 12/13/14 对前台服务用相机分别加了什么约束?为什么隐私合规现在这么重要?
3
▸
YUV、NV21、JPEG 在相机应用里到底怎么分工?ImageReader 拿到的 YUV_420_888 和我们常说的 NV21 是一回事吗?
4
▸
CameraX 的 UseCase 是怎么和 LifecycleOwner 绑定的?为什么很多团队说用 CameraX 能少踩一大半相机管理的坑?
5
▸
走一遍 Camera2 从点击进入相机到屏幕上出现预览的完整链路,每个环节最容易卡住新手的点在哪?
6
▸
竖屏自拍预览是反的、存图方向又不对,Camera1 的 setDisplayOrientation 在 Camera2 里怎么等价实现?预览方向和存储方向是一回事吗?
7
▸
闪光灯你只会调 ON/OFF 吗?手电筒、自动闪、拍照补光在 CaptureRequest 里分别是怎么触发的?预闪测光不处理会怎样?
8
▸
Surface、SurfaceTexture、ImageReader 都是相机帧的消费端,它们到底有什么本质区别?一个 session 能同时往多个 Surface 推流吗?
9
▸
CameraX 除了 Preview 还能同时挂 ImageCapture 和 VideoCapture,组合时最容易出什么 warning?另外,新项目你到底是选 CameraX 还是 Camera2?
10
▸
用户按快门到能看原图有 400ms 时滞,Wire 一下这段 still capture 流程,哪些环节会吃掉延迟?
11
▸
Camera2 配合 MediaRecorder 录像,为什么一接就 onConfigureFailed?recorder 的 Surface 尺寸和 session 配置有什么强约束?
12
▸
onError、onDisconnected、onConfigureFailed 三个回调分别意味着什么?线上相机崩溃你一般怎么兜底恢复?
13
▸
触摸对焦(tap to focus)你怎么做?用户点一下屏幕,从坐标到驱动镜头合焦,中间要过哪几道转换?
14
▸
AE 和 AWB 怎么调?为什么有时候我手动调了曝光补偿画面反而更黑了,跟 AE_MODE 有关系吗?
15
▸
逻辑摄像头和物理摄像头是什么关系?我想做 2x/5x 光学变焦,怎么拿到长焦那颗物理镜头,而不是 HAL 融合后的流?
16
▸
不同机型预览被拉伸、留黑边,尺寸和宽高比该怎么选?超广角那种边角畸变在应用层能校准吗?
17
▸
Camera2 自带的人脸检测和我们接 ML Kit 人脸/手势,分别适合什么场景?拿到人脸框怎么驱动对焦又怎么画到预览上?
18
▸
CameraX Extensions 的 HDR/夜景/虚化是怎么来的?如果我要在应用层自研美颜和实时 HDR,链路怎么搭?
19
▸
相机冷启动 1.2s 太慢,你用 Perfetto 抓到主线程卡在哪儿?首帧和快门延迟分别能从哪些环节抠出来?
20
▸
ImageReader 用着用着相机就不推流了,logcat 报 couldn't allocate,这是内存泄露吗?maxImages 到底设几?