AR 세션 중에 기기의 플래시 장치를 사용 설정하면 가시성을 개선하는 데 도움이 될 수 있습니다.
현재 카메라 구성에서 플래시를 지원하는지 확인
일부 카메라 구성에서는 플래시 장치 사용 설정을 지원하지 않습니다. 플래시를 사용 설정하거나 사용자에게 플래시를 사용 설정하는 옵션을 제공하기 전에 활성 카메라 구성에서 플래시 장치를 사용할 수 있는지 확인합니다.
자바
boolean flashAvailable; try { CameraManager cameraManager = (CameraManager) context.getSystemService(Context.CAMERA_SERVICE); CameraCharacteristics characteristics = cameraManager.getCameraCharacteristics(session.getCameraConfig().getCameraId()); flashAvailable = characteristics.get(CameraCharacteristics.FLASH_INFO_AVAILABLE); } catch (Exception e) { flashAvailable = false; }
Kotlin
val flashAvailable = runCatching { val cameraManager = context.getSystemService(Context.CAMERA_SERVICE) as CameraManager val characteristics = cameraManager.getCameraCharacteristics(session.cameraConfig.cameraId) characteristics.get(CameraCharacteristics.FLASH_INFO_AVAILABLE) } .getOrNull() ?: false
플래시 장치 사용
Config.FlashMode.TORCH
로 AR 세션을 구성하여 플래시 장치를 사용 설정합니다.
자바
if (flashAvailable) { Config config = session.getConfig(); config.setFlashMode(Config.FlashMode.TORCH); session.configure(config); }
Kotlin
if (flashAvailable) { session.configure(session.config.apply { flashMode = Config.FlashMode.TORCH }) }
플래시 장치 사용 중지
다음 명령어로 AR 세션을 구성하여 플래시 장치를 사용 중지합니다.
Config.FlashMode.OFF
:
자바
Config config = session.getConfig(); config.setFlashMode(Config.FlashMode.OFF); session.configure(config);
Kotlin
session.configure(session.config.apply { flashMode = Config.FlashMode.OFF })