android打开前置摄像头和后置摄像头

  次阅读 作者:智能小宝 来源:互联网 2015-09-29 10:07 我要评论(0)

android打开前置摄像头和后置摄像头

前言:

我的android设备是原道N70双擎pad。这个平板电脑没有后置摄像头,只有前置摄像头,当我安装一些程序的时候,会出现 xxxx.apk已经终 止 的错误,然后程序就会退出。思前想后,发现一般的应用程序是安装在手机上的,程序的默认摄像头是后置摄像头。由于我的pad没有后置摄像头,所以,调 用后置摄像头就发生失败!怎么解决呢?

解决问题

编程的时候,我们在调用Camera函数的open函数之前,必须查找是否有可用的摄像头。然后将查找到的摄像头序号传递给Camera类的open函数。

@TargetApi(9)

private int FindFrontCamera(){

int cameraCount = 0;

Camera.CameraInfo cameraInfo = new Camera.CameraInfo();

cameraCount = Camera.getNumberOfCameras(); // get cameras number

for ( int camIdx = 0; camIdx < cameraCount;camIdx++ ) {

Camera.getCameraInfo( camIdx, cameraInfo ); // get camerainfo

if ( cameraInfo.facing ==Camera.CameraInfo.CAMERA_FACING_FRONT ) {

// 代表摄像头的方位,目前有定义值两个分别为CAMERA_FACING_FRONT前置和CAMERA_FACING_BACK后置

return camIdx;

}

}

return -1;

}

@TargetApi(9)

private int FindBackCamera(){

int cameraCount = 0;

Camera.CameraInfo cameraInfo = new Camera.CameraInfo();

cameraCount = Camera.getNumberOfCameras(); // get cameras number

for ( int camIdx = 0; camIdx < cameraCount;camIdx++ ) {

Camera.getCameraInfo( camIdx, cameraInfo ); // get camerainfo

if ( cameraInfo.facing ==Camera.CameraInfo.CAMERA_FACING_BACK ) {

// 代表摄像头的方位,目前有定义值两个分别为CAMERA_FACING_FRONT前置和CAMERA_FACING_BACK后置

return camIdx;

}

}

return -1;

}

public void surfaceCreated(SurfaceHolder holder) {

int CammeraIndex=FindBackCamera();

if(CammeraIndex==-1){

CammeraIndex=FindFrontCamera();

}

mCamera = Camera.open(CammeraIndex);

}

注意:要在android2.3以上平台才可以!不然,编译不通

本站文章信息来源于网络以及网友投稿,本站只负责对文章进行整理、排版、编辑,是出于传递更多信息之目的,并不意味着赞同其观点或证实其内容的真实性。如果您有什么意见或建议,请联系QQ28-1688-302!

人工智能实验室
相关文章相关文章
  • 未来两年人工智能要怎么走?看这篇就够了

    未来两年人工智能要怎么走?看这篇就够了

  • 韩春雨称已能重复实验结果 近期将有消息公布

    韩春雨称已能重复实验结果 近期将有消息公布

  • 无人驾驶汽车如何改变城市生活?听听他们怎么说

    无人驾驶汽车如何改变城市生活?听听他们怎么说

  • 英国研发“杀生”机器人 通过生命体获取能量

    英国研发“杀生”机器人 通过生命体获取能量

网友点评网友点评
阅读推荐阅读推荐

据国外媒体报道,在过去两年内,聊天机器人(chatbot)、人工智能以及机器学习的研发和采用取得了巨大进展。许多初创公司正利用人工智能和...

霍金 视觉中国 图 英国著名物理学家霍金(Stephen Hawking)再次就人工智能(AI)发声,他认为:对于人类来说,强大AI的出现可能是最美妙的...

文|郑娟娟 今年,人工智能(AI) 60岁了。在AI60岁的时候,笔者想要介绍一下AI100,一个刚刚2岁的研究项目,但它的预设寿命是100年,甚至更长...

AlphaGo与李世石的人机大战,为大众迅速普及了人工智能的概念。 但对谷歌而言,除了下围棋,现在的人工智能进展到哪一步了?未来,人工智能...