我正在为客户企业的iPhone应用程序,目前的问题是客户的信息将显示在手机上。 我的客户是担心信息可以使用iPhone屏幕捕获功能(家用+电源键)被捕获,然后通过电子邮件或手机同步。 有没有什么办法禁用屏幕捕获功能? 可以这样做编程,或者可能通过一个配置文件?
Answer 1:
如果您的客户可以保留手机的所有权,他们可以使用限制屏幕捕获功能iPhone配置实用工具 。 确保你不给这些手机这个组织的任何一个外面,否则你就是违反了与苹果公司的企业法律协议。
Answer 2:
由于这是一个企业应用程序,或许你可以把透明覆盖视图之上的一切,在一个drawRect中去不透明的,当它检测到被要求的层渲染为一个屏幕截图(也许是回头看的堆栈跟踪?)
您可以尝试在每一个可能的视图设置调试点和分层描绘方法,并查看是否有被截图触发。
Answer 3:
屏幕捕获可以为通过在iPhone OS配置实用程序管理的iPad / iPhone的启用/禁用。 在参见第33页http://manuals.info.apple.com/en_US/Enterprise_Deployment_Guide.pdf ,它说:
**允许屏幕截图:当这个选项关闭,用户将无法保存显示的屏幕截图*。
换言之,在企业部署中的“客户”拥有ipad公司(或需要员工自有设备由IT配置)屏幕捕获可以在设备级被抑制。
它也可以检测,如果屏幕捕获发生并记录这个(所以也许经理可以支付友好访问)。
这是不能够抑制程序的控制下屏幕捕获。 苹果更喜欢锻炼的严格控制和勉强得到一个位的企业。 它不产生太多的开发者。 (你怎么就像在苹果的种植园佃农?)
严重的是,有控制屏幕捕捉很好的理由。 在教育领域,我们希望使用的iPad作为安全检测设备。 在监考测试环境中,监考官可以确保学生不具备摄像头或便条纸带走试题。 因此,剩余的主要风险测试项目的安全性是屏幕捕获。 如果你抑制不住它,学生可以迅速将他们遇到的每一个测试问题,并通过电子邮件发送给他们的伙伴(或者在线发布或将它们出售给测试准备的公司)。
对于不可控的条件下使用随机消费的iPad,开发者并不具备这种能力。 他们是在休息:-)。
Answer 4:
不,没有。 用户总是能够执行此功能。
Answer 5:
是的,你可以以至少两种方式做到这一点。 网络测试系统(ITS)巴尔的摩已经在店里一个iPad应用程序的测试,有趣的是它是“PEARSON NNAT2 -Stanford 10 - OLSATS”,可用于采取任何这三个测试的皮尔逊应用。 看到https://itunes.apple.com/us/app/pearson-nnat2-stanford10-olsat8/id546817211?mt=8 -它是免费的,你可以下载它。
如果你只是需要你的用户把设备为指导接入模式下启动该应用程序后继续之前,使用UIAccessibilityIsGuidedAccessEnabled(),然后你可以阻止用户使用“打印屏幕” - 或者切换到其他任务。 Examsoft是使用这种方法供应商。
这些功能通常关注的测试发布和评估交付供应商; 我有一个博客帖子和截屏的它的方法和代码仿效Examsoft方法,在这里: http://mindstormtools.com/2013/02/23/ipads-for-assessment-test-delivery-profile/和HTTP ://mindstormtools.com/2013/02/20/ipads-for-assessment-guided-access/