android 摄像头编程

来源:互联网 发布:动易cms视频 编辑:程序博客网 时间:2024/05/29 03:58

最近在研究android的摄像头编程,准备编写一个辅助用单摄像头手机进行立体拍照的应用。

研究中遇到并解决了一些问题,在这里分享一下。

1. 在APIDemo里面,有一个CameraPreview 的示例程序,演示了如何打开摄像头。

2. 如果你直接把这个view的代码拷贝到自己建的工程, 会发现摄像头的显示很怪异,反的或者变形,必须在 AndroidManifest.xml 中 <activity里面加上 android:screenOrientation="landscape" 摄像头画面显示才正确。

3. 开启摄像头最好隐藏系统状态栏如下代码就可以

     final Window win = getWindow();
        win.setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);


昨天的程序,拍照后取得的图片同预览区域一直不一致,preview时预览图和takepicture后取得的图对不上,调查好久都没头绪。

后来调试时发现 surfaceChanged(SurfaceHolder holder, int format, int w, int h) 返回的 w 和 h值不对

实机是800*600, 这里返回的是什么 320*533

在网上进行调查后,发现是配置文件中 <supports-screens android:anyDensity/>  的设置问题,原来设置的是false

改成<supports-screens android:anyDensity="true"/> 就一切正常了



原创粉丝点击