Как определить, сделал ли пользователь скриншот с home+power в iOS?

Я пытаюсь определить, делает ли пользователь снимок экрана, чтобы предупредить его, что это видео с авторскими правами. Я попробовал Darwin Notification, но это не сработало... NSMetadataQuery может быть решением, но мы хотим, чтобы приложение также работало на iOS4. Кто-нибудь может мне помочь? Спасибо: р

3 ответа

Невозможно обнаружить, что снимок экрана был (или будет) сделан на iOS 5.

В iOS 4.0 появилось уведомление Дарвина PictureWasTakenNotification, Но не больше.

В документации ничего не упоминается, и используется NSNotificationCenter подписка на все уведомления показывает тишину только после снятия скриншота.

До ios 4.0 вы можете зарегистрироваться на PictureWasTakenNotification Это уведомление отправляется, когда делается снимок экрана. Уведомления не будут отправлены до того, как был сделан снимок экрана. Но после этого это было прекращено и ИМХО другого пути нет...:/

Вы можете обнаружить это, добавив наблюдателя к UIApplicationUserDidTakeScreenshotNotification,

NSOperationQueue *mainQueue = [NSOperationQueue mainQueue];
[[NSNotificationCenter defaultCenter] addObserverForName:UIApplicationUserDidTakeScreenshotNotification
              object:nil
               queue:mainQueue
          usingBlock:^(NSNotification *note) {
             // executes after screenshot
}];
Другие вопросы по тегам