Android 控制闪光灯

作者: 蒙项 | 来源:发表于2017-07-13 11:03 被阅读0次

    这篇文章主要介绍了Android控制闪光灯的方法,可实现闪光灯打开与关闭的效果,涉及Android操作Camera闪光灯的相关技巧,需要的朋友可以参考下

    最近项目中有涉及闪光灯的需求,所以就收集了下资料,中间也遇到了一些坑,项目上线后做一下总结~

    首先闪光灯可以用android.hardware.camera来控制

    1. 在Manifest.xml文件中添加权限
    <uses-permission android:name="android.permission.CAMERA" />
    
    1. 打开闪光灯操作
    Camera mCamera = Camera.open();
    Camera.Parameters mParameters = mCamera.getParameters(); 
     mParameters.setFlashMode(Camera.Parameters.FLASH_MODE_TORCH); 
    mCamera.setParameters(mParameters);
    

    注:这样的操作在大部分机型上是可以,但是在三星4.3系统、华为p8上却打不开闪光灯,后来发现需要指定下打开摄像头,即使Camera.open()默认打开的是后置摄像头。
    指定打开后置摄像头的操作

    int textureId = 0;
    mCamera.setPreviewTexture(new SurfaceTexture(textureId));
    mCamera.startPreview();
    
    1. 关闭闪光灯操作
    Camera.Parameters mParameters = mCamera.getParameters();
    mParameters.setFlashMode(Camera.Parameters.FLASH_MODE_OFF);
    mCamera.setParameters(mParameters);
    mCamera.stopPreview();
    mCamera.release();
    mCamera = null;
    

    注:在关闭闪光灯后一定要释放照相机对象,不然在其他地方再调用摄像头就会出现无法相应操作的错误。

    这些只是开启关闭的几句核心代码,直接放在项目中使用时完全不够的,在使用的时候需要根据需求加容错处理。有问题的可以在评论区回复~

    相关文章

      网友评论

        本文标题:Android 控制闪光灯

        本文链接:https://www.haomeiwen.com/subject/lwhwhxtx.html