【问题标题】:iPad: new 4/5 finger multitasking gestures - when is the app's screenshot taken?iPad:新的 4/5 手指多任务手势 - 何时截取应用程序的屏幕截图?
【发布时间】:2011-04-29 10:42:50
【问题描述】:

当我的应用退出激活时,它会用黑色视图覆盖当前视图,以防止 iOS 截取显示的潜在敏感文档。

将应用程序推送到后台时,这可以正常工作。屏幕截图是在 didEnterBackground 之后拍摄的。 使用多任务手势切换回来显示黑色视图。

但是,如果您向左或向右滑动,新的 4/5 手指手势会首先触发“退出激活”,然后“确实进入背景”,但屏幕截图似乎是在这些事件之前拍摄的。 这种情况下如何预防?

【问题讨论】:

  • 您可能不应该担心无法直接向公众提供的功能。由于文档声明您可以更改这些方法中的 UI 以更改屏幕截图,因此这将再次成为现实,或者他们将在使手势标准之前提供一些新方法。
  • 更新:将在iOS5中修复。

标签: iphone objective-c cocoa-touch


【解决方案1】:

如果我理解正确,你是想避免这个问题:

http://software-security.sans.org/blog/2011/01/14/whats-in-your-ios-image-cache-backgrounding-snapshot/

问题在于该行为与 Apple 在此处记录的内容不符:

http://developer.apple.com/library/ios/#documentation/iphone/conceptual/iphoneosprogrammingguide/CoreApplication/CoreApplication.html#//apple_ref/doc/uid/TP40007072-CH3-SW21

如果这是真的,那么这听起来肯定是一个错误——但你确实意识到你提到的手势显然是一个不向公众提供的开发人员功能(并且在 NDA 下)?

我会做以下事情:

  1. 提交错误报告 - http://bugreport.apple.com/

  2. 在 Apple 开发者论坛上提问(并附上错误编号)。人们可以在那里畅所欲言,Apple 开发人员可能会回复或至少注意到您的帖子(并希望优先考虑该错误)。

  3. 最后,如果您真的想得到 Apple 的回应,那么此类问题非常适合您的技术支持事件。每年您的 ADC 会员资格中包含其中 2 个:http://developer.apple.com/support/resources/technical-support.html

【讨论】:

  • AFAIK 它不再是纯粹的开发者事物或 NDA 下的东西 - 至少它已经出现在我们在公司拥有的尚未用于开发的新设备上。它似乎出现在 4.3.2 中。我会按照您的建议查看 Apple 开发者论坛。谢谢。
  • 文档中的描述确实与我在使用手势时看到的行为不符。使用主页按钮将应用程序向后推时,它按设计工作。同时,我也看到其他应用也遇到了同样的问题。
【解决方案2】:

哪个“辞职激活”?

您是否尝试过 UIApplication 委托方法 didResignActivewillResignActive ? 或者您是否在特定通知上设置了监听器?

【讨论】:

    【解决方案3】:

    我知道这有点笨拙,但是您可以编写应用程序来感应超过 3 或 4 个手指触摸/移动并抛出“屏蔽屏幕”,然后在 n 秒后移除屏蔽如果 3 或 4+ 手指触摸/移动确实是应用程序切换手势之一,则手指会被移除。

    【讨论】:

      猜你喜欢
      • 2012-01-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-11-26
      • 1970-01-01
      • 2014-03-18
      • 1970-01-01
      • 2021-04-15
      相关资源
      最近更新 更多