欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

Android开启闪光灯的方法 Android打开手电筒功能

程序员文章站 2023-11-17 22:14:46
前言 众所周知,安卓的手电筒功能无非是开启手机的闪光灯,既然开启闪光灯就必须要与相机关联。 代码 写了个小工具,一个文件搞定。 public c...

前言

众所周知,安卓的手电筒功能无非是开启手机的闪光灯,既然开启闪光灯就必须要与相机关联。

代码

写了个小工具,一个文件搞定。

public class flashutils {

  private static flashutils utils;
  private static camera camera;
  public static boolean misopen = true;

  //使用单例模式在这里初始化相机
  public static flashutils getinstance() {
    if (utils == null) {
      utils = new flashutils();
    }
    try {
      if (camera == null) {
        camera = camera.open();
      }
    } catch (exception e) {
      if (camera != null) {
        camera.release();
      }
      camera = null;
    }
    return utils;
  }

  //参考二维码工具的闪光灯
  public void switchflash() {
    try {
      parameters parameters = camera.getparameters();
      if (misopen) {
        if (parameters.getflashmode().equals("torch")) {
          return;
        } else {
          parameters.setflashmode("torch");
        }
      } else {
        if (parameters.getflashmode().equals("off")) {
          return;
        } else {
          parameters.setflashmode("off");
        }
      }
      camera.setparameters(parameters);
    } catch (exception e) {
      finishflashutils();
    }
    misopen = !misopen;
  }

  //页面销毁的时候调用此方法
  public void finishflashutils() {
    if (camera != null) {
      camera.stoppreview();
      camera.release();
    }
    camera = null;
  }

} 

6.0及其以上亲测可用,需手动打开权限。

5.0以下暂未测试。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。