您的位置:首页 > 移动开发 > Android开发

android 中如何获取camera当前状态

2013-05-13 08:46 1186 查看
android中,

调用摄像头需要判断当前摄像头的状态,没找到对应的方法,

采用了个折中方法。

在非main线程里调用Camera.open,catch 相应的RuntimeException,

<span style="white-space:pre">  </span>/**
* 测试当前摄像头能否被使用
* @return
*/
public static boolean isCameraCanUse() {
boolean canUse = true;
Camera mCamera = null;
try {
// TODO camera驱动挂掉,处理??
mCamera = Camera.open();
} catch (Exception e) {
canUse = false;
}
if (canUse) {
mCamera.release();
mCamera = null;
}

return canUse;
}


需要注意的是应该在自己程序的非UI线程中进行上面的判断,因为进入自己的UI线程会导致当前其他程序正在拍摄视频自动终止,
因为UI线程只能有一个在运行。

这个方法可用,但是如果摄像头没有被使用,open和release会白白消耗些资源,另外camera驱动进程挂掉的情况没有考虑
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: