Проверить устройство заблокировано? - PullRequest
1 голос
/ 07 октября 2011

У меня есть многозадачное приложение, и я использую все события делегата приложения для фоновой работы, но когда время блокировки устройства или таймера простоя истекает, ни одно из событий делегата не запускается.Поэтому мне нужно проверить состояние блокировки устройства.

Есть ли способ сделать это с помощью SDK (решение non private api)?

Ответы [ 2 ]

0 голосов
/ 07 октября 2011

Из обсуждения кажется, что вы могли бы использовать applicationProtectedDataWillBecomeUnavailable:

На устройстве, которое использует защиту контента, защищенные файлы хранятся в зашифрованном виде и доступны только при разблокированном устройстве. Это уведомление информирует ваше приложение о том, что устройство собирается быть заблокированным, и что любые защищенные файлы, к которым он в данный момент обращается, вскоре будут недоступны.

Если ваше приложение в настоящее время обращается к защищенному файлу, вы можете использовать этот метод для освобождения любых ссылок на этот файл. Хотя доступ к файлу не является ошибкой, когда устройство заблокировано, любые попытки сделать это не удастся. Поэтому, если ваше приложение зависит от файла, вы можете предпринять шаги, чтобы не использовать этот файл, пока устройство заблокировано.

Я предполагаю, что это будет вызвано независимо от того, используете ли вы защищенные файлы или нет. Я еще не проверял это.

0 голосов
/ 07 октября 2011

Возможно, вы можете наблюдать за элементом в цепочке для ключей:

kSecAttrAccessibleWhenUnlocked Доступ к данным в цепочке для ключей можно получить только тогда, когда устройство разблокировано пользователем.Это рекомендуется для элементов, которые должны быть доступны только тогда, когда приложение находится на переднем плане.Элементы с этим атрибутом переносятся на новое устройство при использовании зашифрованных резервных копий.Доступный в iOS 4.0 и позже.Объявлено в SecItem.h.

От: http://developer.apple.com/library/ios/#documentation/Security/Reference/keychainservices/Reference/reference.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...