Как определить, сделал ли пользователь скриншот с home + power в iOS? - PullRequest
3 голосов
/ 03 января 2012

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

Ответы [ 3 ]

2 голосов
/ 03 января 2012

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

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

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

1 голос
/ 30 ноября 2015

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

NSOperationQueue *mainQueue = [NSOperationQueue mainQueue];
[[NSNotificationCenter defaultCenter] addObserverForName:UIApplicationUserDidTakeScreenshotNotification
              object:nil
               queue:mainQueue
          usingBlock:^(NSNotification *note) {
             // executes after screenshot
}];
1 голос
/ 03 января 2012

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

...