Я работаю над приложением Swift 3, которое будет работать на устройстве неограниченное время. Это очень напряжено для устройства, и я хотел бы выключить дисплей, пока не активирую событие, чтобы снова включить его.Отключить экран iOS программно
Я могу установить isProximityMonitoringEnabled, чтобы экран устройства не работал и приложение работало в фоновом режиме с закрытым сенсором. Однако экран не включается, когда я устанавливаю его на false (он даже не включается, если я перейду к другому виду программно), пока не сниму крышку.
UIDevice.current.isProximityMonitoringEnabled = true;
На данный момент я уменьшаю яркость экрана до 0.0, когда он находится в режиме ожидания.
UIScreen.main.brightness = CGFloat(0.0)
Я не против использования частных API, как ответ на здесь https://stackoverflow.com/a/12944387/1509698 говорит. Но для жизни меня я не могу конвертировать, что Swift или найти фрагмент кода работает на прошивкой 10.
Самый простой способ, вероятно, написание цели -c для частного api в этой ссылке, которую вы указали, и называть ее быстрой. – ptoinson
Хотя этот ответ довольно старый и может не работать с текущими версиями iOS. Один из чертей частного API. Другие идеи: http://stackoverflow.com/questions/1679814/iphone-phone-goes-to-sleep-even-if-idletimerdisabled-is-yes/29256860#29256860 – ptoinson