一、前言
最近前同事兼好基友老戴问我要我之前那个可以无卡顿拍照的demo,翻了一翻我的demo项目文件夹,有点真实
demo目录
加上程序员都是不喜欢看自己以前写的代码的特性,于是决定将这个功能封装一下,方便他人当然也是方便自己
这个功能的出处还是以前我们做的刷卡考勤机,考勤的时候需要取到考勤图片,所以需要进行拍照
我一开始只是使用常规的Camera的takePicture方法来获取照片,但是实际应用中会出现,拍照速度缓慢
当时我还去现场看了一下使用情况,负责人跟我抱怨说拍摄速度很慢,给我演示了一下,确实是有一个卡顿,当然这很好理解,我理直气壮的跟她解释说你用手机拍照不也是会停顿一下的吗,手机需要聚焦啊,这个本来就是这样的
而负责人跟我说了某某考勤机拍照没有停顿啊,非常快的,我第一反应是,应该是windows的机子
结果看到发现人家的也是android的机器,于是便陷入了沉思
我们别的我不知道,但是抄袭这一招可是铁打的,于是乎便开始了对android相机的探索
正如我标题写的,为了实现我卡顿的拍照,使用的是SurfaceView+Camera的方式,通过相机的预览到surfaceView上,然后通过Camera的setPreviewCallback函数的回调来当前帧的图片,便不会有任何的卡顿
二、效果图
点击拍照之后,