android 12 打开闪光灯
时间: 2023-08-02 16:14:52 浏览: 276
在 Android 12 中,可以通过以下代码打开闪光灯:
1. 添加权限到 AndroidManifest.xml 文件中:
```
<uses-permission android:name="android.permission.CAMERA" />
<uses-feature android:name="android.hardware.camera" />
<uses-feature android:name="android.hardware.camera.flash" />
```
2. 在需要打开闪光灯的地方添加以下代码:
```
CameraManager cameraManager = (CameraManager) getSystemService(Context.CAMERA_SERVICE);
try {
String cameraId = cameraManager.getCameraIdList()[0];
cameraManager.setTorchMode(cameraId, true);
} catch (CameraAccessException e) {
e.printStackTrace();
}
```
这段代码首先获取 CameraManager 对象,然后通过 getCameraIdList() 方法获取当前设备的摄像头列表,并从中选择第一个摄像头。最后调用 setTorchMode() 方法打开闪光灯。注意,可能会抛出 CameraAccessException 异常,需要进行异常处理。
相关问题
android单独打开闪光灯代码
以下是在 Android 上单独打开闪光灯的代码:
首先,在 AndroidManifest.xml 文件中添加相机权限:
```
<uses-permission android:name="android.permission.CAMERA" />
```
然后在需要打开闪光灯的 Activity 中添加以下代码:
```java
private Camera camera;
private boolean isFlashOn = false;
...
// 在 onCreate 方法中获取 Camera 对象
camera = Camera.open();
...
// 打开闪光灯
private void turnOnFlash() {
if (!isFlashOn) {
Camera.Parameters params = camera.getParameters();
params.setFlashMode(Camera.Parameters.FLASH_MODE_TORCH);
camera.setParameters(params);
camera.startPreview();
isFlashOn = true;
}
}
// 关闭闪光灯
private void turnOffFlash() {
if (isFlashOn) {
Camera.Parameters params = camera.getParameters();
params.setFlashMode(Camera.Parameters.FLASH_MODE_OFF);
camera.setParameters(params);
camera.stopPreview();
isFlashOn = false;
}
}
...
// 在需要打开或关闭闪光灯的地方调用 turnOnFlash() 或 turnOffFlash() 方法即可
```
要记得在 Activity 销毁时释放 Camera 对象:
```java
@Override
protected void onDestroy() {
super.onDestroy();
if (camera != null) {
camera.release();
camera = null;
}
}
```
android o 打开闪光灯代码
以下是打开闪光灯的代码:
```
CameraManager cameraManager = (CameraManager) getSystemService(Context.CAMERA_SERVICE);
try {
String cameraId = cameraManager.getCameraIdList()[0];
cameraManager.setTorchMode(cameraId, true); // true 为开启闪光灯,false 为关闭闪光灯
} catch (CameraAccessException e) {
Log.e(TAG, "打开闪光灯失败!");
}
```
注意:该代码适用于 Android 6.0及以上版本。同时,需要在Manifest文件中添加相应的权限:
```
<uses-permission android:name="android.permission.CAMERA"/>
<uses-feature android:name="android.hardware.camera" android:required="true"/>
```
阅读全文