Если вы готовы использовать частный API (не будет принят на Apple), есть решение.
Использование GSEventLockDevice в GraphicsServices.framework
Это решение работает, но вы не сможете поставить приложение на AppStore, это будет только хорошо для внутреннего использования Программы
БОЛЬШЕ о ВАШЕМ КОДЕ:
[UIApplication sharedApplication].idleTimerDisabled = YES;
для предотвращения устройства блокировки после ожидания времени, установленного пользователем на его настройке.
NSDate *future = [NSDate dateWithTimeIntervalSinceNow: 0.06 ];
[NSThread sleepUntilDate:future];
Ввод нити для сна, не имеет ничего общего с блокировкой устройства. Вероятно, вы испытали приложение «Замораживание» около 0,06 секунды при тестировании этого ...
Вы хотите, чтобы вы отправили устройство в режим сна (заблокировали экран)? Это невозможно. – FreeNickname
Что касается вашего кода, то первая строка заставляет экран устройства всегда находиться (напротив, как вы думаете, наоборот), а второй просто замораживает текущий поток за 60 миллисекунд. – FreeNickname
Почему вы хотите реализовать такую функциональность? – FreeNickname