没有任何应用程序代表(didEnterBackground 或 willResignActive)在截屏时被调用
Posted
技术标签:
【中文标题】没有任何应用程序代表(didEnterBackground 或 willResignActive)在截屏时被调用【英文标题】:None of the app delegates (didEnterBackground or willResignActive) are getting called on taking a screenshot 【发布时间】:2016-02-17 10:11:57 【问题描述】:我想禁止在我的应用中截取特定屏幕的屏幕截图(因为它包含一些敏感的用户数据)。但是,当我截取应用程序屏幕的屏幕截图时,没有一个应用程序代表被调用。我用谷歌搜索发现:在 ios 7 之后截屏时,主动触摸不会被取消。以下链接也提到了同样的问题http://technet.weblineindia.com/mobile/2-different-methods-to-detect-screenshots-in-ios/ http://www.macrumors.com/2013/06/24/ios-7-disables-screenshot-interruptions-allows-users-to-secretly-take-snapchat-screenshots/
【问题讨论】:
【参考方案1】:您可以使用配置文件进行限制,如Configuration Profile Reference 中所述。
查看 iPhone 配置文件参考的限制有效负载部分。你要的密钥是allowScreenShot
【讨论】:
我知道这是正确的答案,但我知道我错过了一些步骤......你能告诉所有步骤来成功实现这个吗?【参考方案2】:布尔键是 allowScreenShot 苹果文档说: 选修的。如果设置为 false,则用户无法保存屏幕截图,并且也被阻止捕获屏幕录像。默认为真。
可用性:在 iOS 9.0 中更新以包括屏幕录制。
【讨论】:
但是这个 bool 值在哪里存在?..它不在 plist 中,也不是我的 viewcontroller 视图的任何属性 访问此链接developer.apple.com/library/ios/featuredarticles/…以上是关于没有任何应用程序代表(didEnterBackground 或 willResignActive)在截屏时被调用的主要内容,如果未能解决你的问题,请参考以下文章