【问题标题】:When is ios auto screen capture taken?ios什么时候自动截屏?
【发布时间】:2017-04-16 17:47:08
【问题描述】:

我正在尝试更改应用程序进入后台时由 iOS 自动捕获的屏幕截图。

不过,我不完全确定截屏的确切时间。

例如:

如果您在应用程序中拉下通知栏,则会调用以下方法:

- (void) applicationWillResignActive:(UIApplication *) application {
}

此外,如果您在应用程序中双击主页按钮,则会调用相同的方法。此外,如果警报视图显示,则调用“applicationWillResignActive”。

但是在这两种情况下

- (void) applicationDidEnterBackground:(UIApplication *) application {
}

没有被调用。

所以我的问题是,即使应用程序没有进入后台,在调用 applicationWillResignActive 之后是否有截图?还是 iOS 只是在 applicationDidEnterBackground 之后才截屏?

【问题讨论】:

    标签: ios swift uiapplicationdelegate


    【解决方案1】:

    你可以查看here,总之,在从applicationDidEnterBackground返回之前改变视图:

    【讨论】:

    【解决方案2】:

    是的。

    - (void) applicationWillResignActive:(UIApplication *) application { }

    当您拉下通知栏甚至双击主页按钮时调用。你必须在这里做一些事情来防止你的敏感信息被操作系统捕获。一种解决方法可能是:

    1. 在应用进入后台之前设置模糊屏幕覆盖
    2. 应用激活后移除此叠加层

    类似这样的:

    -(void)applicationWillResignActive:(UIApplication *)application
    {
        imageView = [[UIImageView alloc]initWithFrame:[self.window frame]];
        [imageView setImage:[UIImage imageNamed:@"blurryImage.png"]];
        [self.window addSubview:imageView];
    }
    

    然后在应用进入前台之前移除这个覆盖层:

    - (void)applicationDidBecomeActive:(UIApplication *)application
    {
        if(imageView != nil) {
            [imageView removeFromSuperview];
            imageView = nil;
        }
    }
    

    【讨论】:

    • 这不能回答我的问题。我意识到在这些情况下会调用 applicationWillResignActive 。但是,应用程序何时截取屏幕截图? applicationWillResignActive 还是 applicationDidEnterBackground?
    • 好的,我明白了。请参阅 Apple 在您的AppDelegate.m 中的这些方法中提供的文档,您会找到答案。顺便说一句,确切地说,applicationWillResignActive 应该是您问题的答案。
    【解决方案3】:

    查看官方文档 - "Preventing Sensitive Information From Appearing In The Task Switcher".

    上面写着applicationDidEnterBackground:应该用于上述目的。

    【讨论】:

      【解决方案4】:

      当您拉下通知栏或双击主页按钮时调用。你必须在这里做一些事情来防止你的敏感信息被操作系统捕获。一种解决方法可能是:

      在应用进入后台之前设置模糊的屏幕覆盖 应用激活后,移除此叠加层

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多