Как мне предотвратить затемнение или выключение экрана iPhone во время работы моего приложения?
-
02-07-2019 - |
Вопрос
Я работаю над приложением, которое не требует ввода данных пользователем, но я не хочу, чтобы iPhone переходил в режим энергосбережения.
Можно ли отключить энергосбережение в приложении?
Решение
Цель-C
[[UIApplication sharedApplication] setIdleTimerDisabled:YES];
Быстрый
UIApplication.shared.isIdleTimerDisabled = true
Другие советы
В быстрый вы можете использовать это как
UIApplication.sharedApplication().idleTimerDisabled = true
Быстрый 3:
UIApplication.shared.isIdleTimerDisabled = true
Я поместил эту строку кода в свой view controller, но мы по-прежнему получаем сообщения клиентов о том, что экран будет тусклым или выключится до тех пор, пока кто-нибудь не прикоснется к экрану.Я видел другие посты, где вы не только программно устанавливаете
UIApplication.sharedApplication().idleTimerDisabled = true
в значение true, но сначала вы должны сбросить его в значение false
UIApplication.sharedApplication().idleTimerDisabled = false
UIApplication.sharedApplication().idleTimerDisabled = true
К сожалению, это все еще не сработало, и клиенты по-прежнему получают затемненные экраны.У нас есть профиль конфигуратора Apple, предотвращающий переход устройства в спящий режим, и все же экран некоторых устройств становится тусклым, и клиенту необходимо нажать кнопку "Домой", чтобы включить экран.Теперь я поместил этот код в таймер, который срабатывает каждые 2,5 часа, чтобы сбросить таймер ожидания, надеюсь, это сработает.
У нас была такая же проблема.Оказалось, что это вредоносный процесс на нашем сервере MDM, который был удален из нашей учетной записи, но на сервере все еще отправлялась команда для отключения наших устройств.