对于这个问题,你应该:

>检查手电筒是否是

可用与否?

>如果是,则关闭/打开

>如果没有,那么根据你的应用,你可以做任何事情

需要.

要检查设备中闪存的可用性:

您可以使用以下内容:

context.getPackageManager().hasSystemFeature(PackageManager.FEATURE_CAMERA_FLASH);

如果闪存可用则返回true,否则返回false.

用于打开/关闭手电筒:

我google了,得到了关于android.permission.FLASHLIGHT的这个. Android清单的许可看起来很有希望:

android:permissionGroup="android.permission-group.HARDWARE_CONTROLS"

android:protectionLevel="normal"

android:label="@string/permlab_flashlight"

android:description="@string/permdesc_flashlight" />

例如.

代码片段打开相机手电筒.

Camera cam = Camera.open();

Parameters p = cam.getParameters();

p.setFlashMode(Parameters.FLASH_MODE_TORCH);

cam.setParameters(p);

cam.startPreview();

代码片段可关闭相机指示灯.

cam.stopPreview();

cam.release();

我刚刚找到了一个使用此权限的项目.检查quick-settings的src代码.这里http://code.google.com/p/quick-settings/(注意:此链接现已中断)

更新5主要更新

更新1

更新2

另一个开源代码:

更新3(用于打开/关闭相机的小工具)

更新4

**问题:**

打开/关闭手电筒时也存在一些问题.例如.对于没有FLASH_MODE_TORCH或甚至没有FLASH_MODE_TORCH的设备,则手电筒不会打开等.

通常,三星会产生很多问题.

您可以参考以下列表中的问题:

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

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

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

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

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

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

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

  4. android 闪光灯程序,如何在Android中以编程方式打开前闪光灯?

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

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

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

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

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

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

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

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

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

  9. 如何在vim中交换两个打开文件(在拆分中)的位置?

    本文翻译自:How can I swap positions of two open files (in splits) in vim? Assume I've got some arbitrary ...

最新文章

  1. Prime Path(bfs)广度优先搜索
  2. 漏洞:阿里云盾phpMyAdmin =4.8.1 后台checkPageValidity函数缺陷可导致GETSHELL
  3. 003_Controller和RequestMapping注解
  4. C语言数组学习 - 使用窗口版程序演示
  5. 工作多年,怀才不遇你该怎么办?
  6. Java实现数据批量导入数据库(优化速度-2种方法)
  7. 实现一个shell程序
  8. 请教问题:ckeditor脚本错误“Error:例外被抛出且未被接住”[已解决]
  9. uniApp H5微信网页授权,微信支付
  10. jsp如何跳转java_JSP的三种跳转方式
  11. 手绘风格的 JS 图表库:Chart.xkcd
  12. Eqs POJ - 1840
  13. 5.8G无线游戏耳机模组方案需要哪些亮点|天惠微科技
  14. 怎么在漫画中去表现速度线?
  15. 机器学习中的置信区间与置信度
  16. 深入理解计算机系统-bomblab详解
  17. html导航跳转,css实现导航切换的实例代码
  18. matlab如何调用优化算法,MATLAB优化算法(一)
  19. PBOC MAC 计算算法 实现
  20. 软件性能测试 硬件配置,硬件配置及性能测试_笔记本评测-中关村在线

热门文章

  1. Python细枝末节个人知识记录
  2. 中西谚语对照1000句
  3. 如何在linux终端创建txt文件,在Linux中,如何使用 命令行 快速创建一个文本文件...
  4. c语言scanf %4c,scanf(%3c%4c,a,b);当输入ABCDEFGH时 a b的值分别是?怎么来的?
  5. QK对中断的特殊处理
  6. [笔记分享] [Camera] MTK Camera基础知识二
  7. 提高Python编程的效率技巧你知道哪些?收藏必备系列,阿里表哥推荐!Python高效编程技巧
  8. 各地留守过年最全福利盘点
  9. K3欠料计算存储过程
  10. (Google)谷歌笔试算法题:要求相邻的两个数都不小于或者不大于其本身的排序