在 iOS 中,我们可以使用 scenePhase 来检测应用程序何时处于前台,并将其用作刷新数据的机会。
对于保持打开状态的应用程序,它似乎不适用于visionOS。我需要一种刷新数据的方法,并且正在努力寻找正确的生命周期事件来启动它。
.onChange(of: scenePhase) { _, newPhase in
switch newPhase {
case .active:
// Would like to refresh data but this is only called when
// closing the app and reopening it. Not when looking at the app
// (or even interacting with the app) after looking at another app
default: return
}
}
您必须想出另一种方法来触发数据刷新。注视方向不与应用程序共享。
Apple Vision Pro 隐私概述指出(第6页):
您查看的内容不会与应用程序共享,因为我们查看的内容以及查看方式 只要我们仔细观察它,就可能揭示我们的思维过程。 VisionOS 处理眼睛 系统级别的移动,并且不会共享您正在看的地方,或者您的 在与内容互动之前,通过应用程序或网站进行眼睛输入。因此, 应用程序和网站仅知道您点击手指时选择的内容 在一起,不是你看什么而不选择。
在用户查看控件并点击它之前,您不会知道他们在看什么。