Как предотвратить запись экрана в ios11

По некоторым причинам наше приложение не хочет, чтобы экран записи людей, но в ios11 новая функция может позволить пользователю записывать экран iphone, поэтому есть ли API или уведомление, указывающее, что пользователь записывает сейчас, большое спасибо

2 ответа

Вы можете определить, записывается ли экран с:

UIScreen.main.isCaptured
// True if this screen is being captured (e.g. recorded, AirPlayed, mirrored, etc.)

Вы не можете предотвратить это, используя настройки проекта, но вы можете использовать модальное или что-то еще, чтобы попросить пользователя отключить его. Не уверен, как это может работать с вашим представлением в AppStore.

Вы можете использовать КВО наблюдать UIScreenCapturedDidChangeNotification в iOS 11 вот так

NSOperationQueue *mainQueue = [NSOperationQueue mainQueue];
    [[NSNotificationCenter defaultCenter] addObserverForName:UIScreenCapturedDidChangeNotification object:nil queue:mainQueue usingBlock:^(NSNotification * _Nonnull note) { 
 //code you want execute
}];
Другие вопросы по тегам