iOS应用程序进入后台时(之前)拍摄的屏幕截图?

iPa*_*tel 2 iphone cocoa-touch objective-c ios

我希望大家都知道,iOS在您的应用程序进入后台之前截屏.

我是从官方文件中得到的.

在移动到后台之前从视图中删除敏感信息:当应用程序转换到后台时,系统会拍摄应用程序主窗口的快照,然后在将应用程序转换回前台时会快速显示该窗口.在从applicationDidEnterBackground:方法返回之前,您应该隐藏或隐藏可能作为快照的一部分捕获的密码和其他敏感个人信息.

所以,在这里我们可以隐藏我们的"敏感个人信息",系统会拍摄应用程序主窗口的快照,因此我们无法更改其功能.

但我想知道..

1)如果在我的应用程序中我在第4视图,我的应用程序转到后台,那么系统会截取哪个视图/页面的屏幕截图?第一个(应用程序的启动视图?)或应用程序的第4个视图/页面?(这对我来说有点混乱).

2)我们可以在系统截屏时发出任何动作,或者有任何通知可以告诉我们系统截屏吗?

3)我只是想知道,是否有可能在我的应用程序启动之前进行屏幕截图(以编程方式)?如果是,那么请告诉我如何做到这一点.如果没有,那么我可以截取的时间/地点(我的意思是在哪个最小的应用阶段,我们将能够截取屏幕截图?)

rck*_*nes 7

  1. 它将占据屏幕最顶层的视图,实际上它正在显示正在显示您的应用程序的窗口的屏幕截图.
  2. 没有通知屏幕截图正在进行或被拍摄.你应该只在applicationDidEnterBackground;方法中处理它的句柄.只是在文档中说明
  3. 不,这是不可能的,你想如何在应用程序运行之前执行任何代码?操作系统将进行屏幕截图,只需确保将所有内容隐藏在屏幕中 applicationDidEnterBackground;.最低状态是您的应用程序已启动并正在运行.

我的应用就是我的应用程序,只要我的应用程序被推到后台,我就可以看到额外的视图UIWindow.因此,当进行屏幕截图时,捕获该视图.