相机开发(聚焦、横竖屏拍照、照片存储、连续拍照等)
近期项目用到了相机拍照的功能,于是想着封装好一些通用性较好的相机调用,从百度和谷歌上查找出来的资料真的印证了“天下文章一大抄”的道理,并且它们实现的拍照功能大都存在缺陷,如聚焦问题、反复拍照问题、照片存储问题、横竖屏转换问题。一大堆的问题,并且程序的扩展性和可重用性实在不敢恭维,排版级其混乱。 最后无奈,打开API文档camera相机类,从最基础的学起,然后自己进行改进,从这里也告诉我们一个道理,API文档才是学习起点,由于它会告诉你整个实现的原理和原因,可以对整个框架有一个总体的了解,看完API文档看其它的就有事半功倍的效果,吐槽完成,以下来正式实现。 一.实现流程 这幅图是从API文档(最好是看英文版的)整理出来的,从这副图上面我们能够看出,主要是有6步,当中难点是创建相机预览类。 二.权限声明 这个不讲了,直接增加声明权限代码,不明确的能够网上查查看 <uses-permission android:name="android.permission.CAMERA" /> <uses-feature android:name="android.hardware.camera" /> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <uses-permission