Неправильная настройка уровня факела на iphone xs max

Я сделал это приложение дремал, который помогает вам медитировать, регулируя факел на вашем телефоне. Это происходит от низкого уровня яркости до высокого уровня родимости за определенный период времени.

Он отлично работал на iPhone 6gen, 7gen, 8gen и X. Я только что получил XS max, и по какой-то причине вместо регулировки яркости он просто остается включенным при максимальной яркости.

Он все еще работает на iPhone 7 с iOS 12. Странно то, что НЕКОТОРЫЕ это СЛУЧАЙНО работает на XS Max, я просто не могу понять, что заставляет его корректно настраиваться и что иногда приводит к зависанию на максимальной яркости.

func updateTorch() {

    guard let device = AVCaptureDevice.default(for: AVMediaType.video) 
else {
        return
    }

    if device.hasTorch && device.isTorchAvailable {

        do {
            try device.lockForConfiguration()

            if torchMode == 0 {
                device.torchMode = .off
            } else {
                try device.setTorchModeOn(level: torchMode) // HERE
            }

            device.unlockForConfiguration()

        } catch {
            print("Torch is not working.")
        }
    } else {
        print("Torch not compatible with device.")
    }
}

Это мой основной метод обновления факела. Если я печатаю "torchMode", где я пометил "// ЗДЕСЬ", это дает корректирующее значение Float между 0 и 1. Также не возникает никаких ошибок из метода setTorchModeOn(level:).

0 ответов

Другие вопросы по тегам