在API 23或更高版本中(AndroidM,6.0)打开代码if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {

CameraManager camManager = (CameraManager) getSystemService(Context.CAMERA_SERVICE);

String cameraId = null; // Usually back camera is at 0 position.

try {

cameraId = camManager.getCameraIdList()[0];

camManager.setTorchMode(cameraId, true);   //Turn ON

} catch (CameraAccessException e) {

e.printStackTrace();

}}关闭代码camManager.setTorchMode(cameraId, false);和权限

附加编辑

人们仍然在质疑我的答案,所以我决定发布更多的代码-这是我当时解决问题的方法:public class FlashlightProvider {private static final String TAG = FlashlightProvider.class.getSimpleName();

private Camera mCamera;private Camera.Parameters parameters;private CameraManager camManager;

private Context context;public FlashlightProvider(Context context) {

this.context = context;}private void turnFlashlightOn() {

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {

try {

camManager = (CameraManager) context.getSystemService(Context.CAMERA_SERVICE);

String cameraId = null; // Usually front camera is at 0 position.

if (camManager != null) {

cameraId = camManager.getCameraIdList()[0];

camManager.setTorchMode(cameraId, true);

}

} catch (CameraAccessException e) {

Log.e(TAG, e.toString());

}

} else {

mCamera = Camera.open();

parameters = mCamera.getParameters();

parameters.setFlashMode(Camera.Parameters.FLASH_MODE_TORCH);

mCamera.setParameters(parameters);

mCamera.startPreview();

}}private void turnFlashlightOff() {

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {

try {

String cameraId;

camManager = (CameraManager) context.getSystemService(Context.CAMERA_SERVICE);

if (camManager != null) {

cameraId = camManager.getCameraIdList()[0]; // Usually front camera is at 0 position.

camManager.setTorchMode(cameraId, false);

}

} catch (CameraAccessException e) {

e.printStackTrace();

}

} else {

mCamera = Camera.open();

parameters = mCamera.getParameters();

parameters.setFlashMode(Camera.Parameters.FLASH_MODE_OFF);

mCamera.setParameters(parameters);

mCamera.stopPreview();

}}}

android 闪光灯程序,如何在Android中以编程方式打开前闪光灯?相关推荐

  1. android 打开闪光灯,如何在Android中以编程方式打开前置闪光灯...

    对于这个问题,你应该: >检查手电筒是否是 可用与否? >如果是,则关闭/打开 >如果没有,那么根据你的应用,你可以做任何事情 需要. 要检查设备中闪存的可用性: 您可以使用以下内容 ...

  2. android指南针程序,如何在Android上制作精确的指南针

    我的Android应用程序显示了世界上某个地方的方向,因此需要获得罗盘度. 这是我一直用来计算学位的代码: public void getDirection() { mySensorManager = ...

  3. 如何在Java中以编程方式阅读,添加或删除PPT中的幻灯片便笺?

    幻灯片注释用于添加其他信息,作为演示文稿中的参考.演示者添加了这些注释,以回顾与他们的演示相关的要点.在本文中,将学习如何以编程方式操作演示文稿中的幻灯片注释.特别是,本文将介绍如何使用Java读取, ...

  4. 如何在 C# 中以编程方式将 IGS/IGES 文件转换为 PDF?

    计算机辅助设计应用程序使用 IGS 文件,因为它们包含设计信息.您可以将 IGS 文件转换为 PDF 格式的文档,以便在多个操作系统和环境中查看内容. 使用 C# 以编程方式将 IGS 或 IGES ...

  5. 快速学习:如何在Java中以编程方式将PNG或JPG图像转换为PSD?

    JPG和PNG图像是一些最常用的光栅图像格式.有时可以根据需要将JPG或PNG图像转换为PSD文件格式.当要将不同的图层组合到一个文件中时,这可能会很有用.本文将介绍一下更多详细信息: 使用Java以 ...

  6. linux给文件夹图标,linux – 如何在GNOME中以编程方式设置自定义文件夹图标?

    我终于想出了如何做到这一点!这是一个在标准Gnome环境中工作的Python脚本: #!/usr/bin/env python import sys from gi.repository import ...

  7. 如何在 SwiftUI 中以编程方式滚动列表?

    看起来在当前的工具/系统中,刚刚发布的 Xcode 11.4/iOS 13.4 中将没有 SwiftUI 原生支持"滚动到"功能List.因此,即使他们,Apple,将在下一个主要 ...

  8. CAD处理控件Aspose.CAD功能演示:在 C#中以编程方式搜索 DWG 图形文件中的文本

    Aspose.CAD 是一个独立的类库,以加强 Java应用程序处理和渲染CAD图纸,而不需要AutoCAD或任何其他渲染工作流程.该CAD类库允许将DWG, DWT, DWF, DWFX, IFC, ...

  9. android在java下建立模块,Android Studio:如何在Android模块中包含Java模块?

    在Android工作室我有一个Android模块,我们称之为MyAndroid.我还有一个Java模块(不是独立的JAR,而是模块中的完整Java项目),我们称之为MyJava.Android Stu ...

最新文章

  1. C语言清空输入缓冲区的N种方法对比
  2. 编译可在Android上运行的qemu user mode
  3. html div中怎么引入另一个html文件
  4. 【ros】4.rosbag的相关用法
  5. 三个月前被 K8S 弃用,Docker 火了!获 2300 万美元融资
  6. 进程控制(二)与linux下的自有服务
  7. 小程序的 rpx布局问题
  8. 【Kafka】Kafka Tool 2 使用教程 SASL_PLAINTEXT
  9. Leetcode每日一题:141.linked-list-cycle(环形链表)
  10. sql azure 语法_Azure Data Studio中SQL Server架构比较扩展
  11. 计算机网络bd,第七周-计算机网络技术
  12. 别和 Python 说再见了!丨搞不定它的程序员,到底怎么了?
  13. MySQL服务安全加固及防护
  14. SAP BPC最佳实践-BPC安装及配置的常见问题
  15. 禁止选中页面内容-兼容ie、firefox、chrome
  16. arm linux dma 编程 request_dma,Linux驱动技术技术之一:DMA编程
  17. org.apache.commons.fileupload.DiskFileUpload
  18. 最速下降法及案例分析(含MATLAB代码)
  19. 深圳恒波软件公司LockDir加密软件原理与破解
  20. java word 文档合并_[原创]java合并word文件

热门文章

  1. Springboot就业招聘信息系统x8y1g计算机毕业设计-课程设计-期末作业-毕设程序代做
  2. Cocos2d-x 2.0 之 Actions “三板斧” 之三
  3. xcpc网络赛个人总结(文笔不好,纯纯记录)
  4. matlab 时间坐标轴,matlab坐标轴范围
  5. 如何使用智能手机或Smartwatch重新配置睡眠周期
  6. Quartus II 11.0破解要点(与低版本的不同)
  7. Drill系列(1):Dremel的原理
  8. 手机开机启动慢是什么原因_手机开机慢,详细教您手机开机慢怎么办
  9. python PIL图片拼接
  10. SCRM---私域快速提升成交百万的快闪群及私聊话术