zoukankan      html  css  js  c++  java
  • 【转载】Android7.0以前和7.0以后开启闪光灯的方式

    1. Android 7.0以后闪光灯是通过CameraManger来进行管理的
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
        try {
            //obtain CameraManager
            CameraManager mCameraManager = (CameraManager) getContext().getSystemService(Context.CAMERA_SERVICE);
            //obtain camera ID
            String[] ids  = mCameraManager.getCameraIdList();
            for (String id : ids) {
                CameraCharacteristics c = mCameraManager.getCameraCharacteristics(id);
                //whether contain flash light
                Boolean flashAvailable = c.get(CameraCharacteristics.FLASH_INFO_AVAILABLE);
                Integer lensFacing = c.get(CameraCharacteristics.LENS_FACING);
                if (flashAvailable != null && flashAvailable
                    && lensFacing != null && lensFacing == CameraCharacteristics.LENS_FACING_BACK) {
                    //open or close flash light
                    mCameraManager.setTorchMode(id, isChecked);
                }
            }
        } catch (CameraAccessException e) {
            e.printStackTrace();
        }
    }
    
    
    1. Android 7.0之前是通过Camera来管理
    if (isChecked) {
        try {
            mCamera = Camera.open();
            mCamera.startPreview();
            mParameters = mCamera.getParameters();
            mParameters.setFlashMode(Camera.Parameters.FLASH_MODE_TORCH);
            mCamera.setParameters(mParameters);
            Toast.makeText(getContext(),"Flash On", Toast.LENGTH_SHORT).show();
        }catch (Exception e) {
            e.printStackTrace();
        }
        
    }else {
        mParameters.setFlashMode(Camera.Parameters.FLASH_MODE_OFF);
        mCamera.setParameters(mParameters);
        mCamera.stopPreview();
        mCamera.release();
        Toast.makeText(getContext(),"Flash Off", Toast.LENGTH_SHORT).show();
    }
    

    链接:Android7.0以前和7.0以后开启闪光灯的方式

  • 相关阅读:
    C# 操作DataTable
    SQLSERVER 连接常见问题
    python 3 与python 2连接mongoDB的区别
    图片url 设置大小
    Python在VSCode环境抓取TuShare数据存入MongoDB环境搭建
    excel解决日常问题记录
    安装MAT内存分析工具独立版
    类加载机制介绍
    jvm启动语句
    linux监控系统语句
  • 原文地址:https://www.cnblogs.com/liuxin0430/p/12688230.html
Copyright © 2011-2022 走看看