在我的iOS应用程序中,我需要阻止屏幕截图捕获(通过按Home + Power按钮的组合),或者需要在保存到Photo库之前进行检测。
在之前的iOS版本中,在获取屏幕截图touchesCancelled:withEvent
之前会调用此方法,但iOS7以后这不会起作用。
Apple提供通知
UIApplicationUserDidTakeScreenshotNotification
用于检测屏幕截图捕获。真正的问题是只有在屏幕截图保存在照片库中后才会触发。
是否有任何方法(私人/公共)用于在屏幕截图发生之前检测屏幕截图,或者只是阻止屏幕截图功能。
不要将其视为重复问题,而是iOS7特定问题
答案 0 :(得分:2)
不,自iOS7以来没有任何变化,未来不会改变,这是一个概念性问题,iOS应用程序无法控制设备的公共功能,请考虑关闭“截屏”而其他应用需求它!!这个应用程序将如何知道?
您可以做的最好的事情是使用配置文件,如上所述@QED有效答案。
答案 1 :(得分:1)
您可以使用配置文件限制,如链接问题中所述。
查看iPhone Configuration Proifile Reference的限制有效负载部分,从第27页开始。您想要的密钥是allowScreenShot
,如第30页底部所述。
此外,链接引用指出有许多方法可以安装配置文件。您可以在应用程序中为用户提供一些触发服务器安装/重新安装配置文件的方法。只是一个想法,我对此事没有经验。
我无法与私人API对话。您可以查看http://www.modmyi.com,或者在IRC上窥探一些越狱社区。有很多专家可以指出你的API,但他们不倾向于坚持SO。
祝你好运!