如何解决如何打开安卓设备的前手电筒不是后手电筒
我开发了一个简单的应用程序来打开/关闭手电筒。但是我找不到打开设备前手电筒的方法(如果有的话)。
可用性检查代码:
boolean hasCameraFlash = getPackageManager().hasSystemFeature(PackageManager.FEATURE_CAMERA_FLASH);
我的开启代码是:
@RequiresApi(api = Build.VERSION_CODES.M)
private void flashLightOn() {
try {
String cameraId = cameraManager.getCameraIdList()[0];
cameraManager.setTorchMode(cameraId,true);
} catch (CameraAccessException ignored) {
}
}
是否可以在不打开相机的情况下打开设备的前置手电筒。 任何帮助将不胜感激。
(请注意,我是安卓开发新手)
解决方法
对于检查设备中闪存的可用性:
您可以使用以下内容:
context.getPackageManager().hasSystemFeature(PackageManager.FEATURE_CAMERA_FLASH);
如果 Flash 可用则返回 true,否则返回 false。
见:
http://developer.android.com/reference/android/content/pm/PackageManager.html 了解更多信息。
用于打开/关闭手电筒:
我在谷歌上搜索了关于 android.permission.FLASHLIGHT 的信息。 Android 清单的许可看起来很有希望:
<!-- Allows access to the flashlight -->
<permission android:name="android.permission.FLASHLIGHT"
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();
用于关闭摄像头 LED 灯的代码片段。
cam.stopPreview();
cam.release();
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。