Camera2 在Android5.0都已经出来了,现在的项目上竟然还在用已经被舍弃的Camera1,不能容忍了,改!
1、使用感受:
目前按照google给出的实例,写出来了一个demo,和Camera1最大的区别可能是
a:以服务的形式使用,需要进行请求;
b:需要以后台线程来处理,避免阻塞UI线程;
其他的都是需要设置参数来控制,旋转,在surfaceView上显示等等;
2、使用过程理解:
Camera2的使用理解是这样的,Camera是一个服务,如果你想录像拍照等那你就需要获取一个Camera对象”CameraDevice“;当你想管理“CameraDevice”的时候你需要“CameraManager”;如果你想用一个“CameraDevice"拍照的时候,你就需要“CameraCaptureSession”来和camera建立连接;当你要拍照的时候,你需要通过“”向“”发送一个“CaptureRequest”这样Camera才会响应你;
a、CameraManager ,管理Camera,通过CameraManager获取Camera的相关特性等;
b、CameraDevice,Camera设备对象;
c、CameraCaptureSession 用来和camera建立连接,拍照录像都离不了;
d、CaptureRequest 拍照录像的请求;
e、CameraCharacteristics camera的一些特性,比如预览的尺寸等等的设置;