Получить уведомление, когда мое устройство заблокировано - PullRequest
1 голос
/ 28 июля 2011

Могу ли я получить уведомление в своем запущенном приложении, когда устройство автоматически заблокировано?

любая помощь?

Ответы [ 4 ]

7 голосов
/ 28 июля 2011

Вы можете использовать

- (void)applicationWillResignActive:(UIApplication *)application;

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

Вот хороший Обзор делегата UIApplication , охватывающий эту тему и еще несколько, с которыми вы можете столкнуться.

2 голосов
/ 28 июля 2011

Да, вы всегда получаете это уведомление, просто смотрите:

- (void)applicationWillResignActive:(UIApplication *)application;
1 голос
/ 28 июля 2011

Для этого афаика нет явного уведомления. Будет вызван applicationWillResignActive, но он также будет вызываться, когда приложение переходит в фоновый режим другими способами (например, нажатием кнопки HOME или переключением на другое приложение).

0 голосов
/ 01 февраля 2016

Выполните этот код, чтобы получить состояние в applicationWillResignActive

 int notify_token;
 notify_register_dispatch("com.apple.springboard.lockstate", &notify_token,dispatch_get_main_queue(), ^(int token) {
 uint64_t state = UINT64_MAX;
 notify_get_state(token, &state); 
 if(state == 0) {
 NSLog(@"unlock device");
 } else {
 NSLog(@"lock device");
 }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...