AR oturumu sırasında cihazın flaş biriminin etkinleştirilmesi, görünürlük.
Mevcut kamera yapılandırmasının flaşı desteklediğinden emin olun
Bazı kamera yapılandırmaları, flaş biriminin etkinleştirilmesini desteklemez. Flash'ı etkinleştirmeden veya kullanıcılara flaşı etkinleştirme seçeneği sunmadan önce flaş biriminin aktif kamera için bulunduğundan emin olun. yapılandırma:
Java
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
Flaş birimini etkinleştirin
AR oturumunu
Config.FlashMode.TORCH
:
Java
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 }) }
Flaş birimini devre dışı bırakın
AR oturumunu
Config.FlashMode.OFF
:
Java
Config config = session.getConfig(); config.setFlashMode(Config.FlashMode.OFF); session.configure(config);
Kotlin
session.configure(session.config.apply { flashMode = Config.FlashMode.OFF })