大多数浏览器和
Developer App 均支持流媒体播放。
-
探索之旅:空间计算中的快速查看
了解如何使用 VisionOS 中的快速查看对 3D 内容、空间图像和视频等进行功能强大的预览。我们将向你展示系统呈现这些预览体验的不同方式,演示如何从 App 或网站拖放快速查看内容,创建包含该内容的单独窗口,并探索如何直接在 App 内直接呈现 快速查看界面。
资源
相关视频
WWDC23
WWDC20
-
下载
♪ 悦耳的器乐嘻哈 ♪ ♪ 你好 欢迎来到“探索之旅: 空间计算中的快速查看” 我叫 Youssef 是 AR 快速查看团队的 一名工程师 今天 我将向你介绍 xrOS 中 快速查看的所有功能及使用方法 在这里 你将解锁 在该平台使用 App 和网站的 全新体验 在开始之前 让我们先来了解一下 什么是快速查看 快速查看是一个系统框架 有了它 你就可以 在 iOS、macOS 及现在的 xrOS 中轻松预览和编辑文件 快速查看具有强大的编辑功能 比如即开即用的视频剪辑 以及 PDF 和图像标记 它还能够保证文件的安全访问 因此 你不必担心 App 会 打开不受信任的文件 快速查看出现在 Apple 平台的许多地方 在 iOS 中 只要打开任意附件 它就会出现在消息线程中 在 macOS 中 只要在访达或 桌面上的任意选中文件上按下空格键 即可进入快速查看 快速查看是 xrOS 中 文件支持内容的系统查看器 与 iOS 和 macOS 相同 xrOS 中的 App 可以通过 快速查看能轻松获得丰富的文件查看 和编辑功能 让我们一起来体验一下吧 最近我在装修公寓 并一直在使用一个 App 跟踪装修进度 与装修团队沟通协商 我的其中一位室内设计师 刚刚给我发了一个文件夹 里面有他对房子设计的一些想法 我在这里打开了这个文件夹 现在 我们一起看看他的想法 看起来 这个客厅设计图 用的是 USDZ 文件 让我们打开这个文件 要想打开这个文件 我会先选中文件并将其拖出 然后将其放在所有 App 之外
拖出 USDZ 文件后 便会在拖出的位置显示 一个 3D 快速查看预览图 我就可以立即开始与其交互 使用选中和拖动手势 我就可以旋转这个模型 更好地观察这美观的裸露砖墙立面 想看看客厅细节的话 我可以将模型等比例缩放 我的设计师好像还发了一张图片 图片上是房子周围的街区 最后 好像还有一个文档 上面列出了他规划的住宅功能 其中多数看起来不错 但最后这一条 我还不太确定 我先留个便条吧 回头再决定 先打开窗口顶部的菜单 选择标记 打开标记的调色板 快速圈出打算回头再看的这一条
我们能够从 App 中拖出文件 并在该 App 之外预览该文件 我们对多个文件执行了此操作 并在源 App 旁查看这些文件 这种在快速查看中呈现文件的新方式 称为 Windowed Quick Look 在该讲座中 你将进一步了解 该呈现方式的更多信息 以及 App 和网站对它的应用 随后我们将介绍直接在 App 中 打开快速查看预览的方法 首先 让我们深入了解一下 Windowed Quick Look Windowed Quick Look 允许你 在 App 外打开快速查看预览图 如果你想在任何 App 旁 查看文件中的内容 这就是完美的顺畅体验 由于 Windowed Quick Look 预览图 托管在单独的 App 中 你尽可以关闭源 App 预览图并不会随之关闭 Windowed Quick Look 还提供了更丰富的观看体验 适用于 USDZ 和 Reality 文件支持的 3D 模型 你可以在 App 之外单独 缩放和放置 3D 内容 你也能缩放 3D 模型 这将使环境变暗并隐藏其他场景 助你专注于 3D 内容本身 快速查看窗口中显示的某些文件类型 还支持同播共享功能 因此你可以共享文件 并通过 FaceTime 通话查看 通过同播共享分享 3D 内容时 快速查看会同步 3D 模型的 方向、比例和动画效果 通过同播共享分享图像时 你可与他人共同为该图像添加标记 通过快速查看分享同播共享文件时 你可以与你的伙伴 纵享轻松简单的文件协作体验 App 和网页都可以 在快速查看窗口中 呈现内容 并使用其提供的 诸多功能 首先 我们来看看 Windowed Quick Look 是如何呈现 App 中的内容的 通过提供包含某些 URL 的拖动源 你就可以在快速查看 窗口打开 App 中的文件 在拖动交互过程中 放置目标于所有 App 之外时 系统将在快速查看窗口中 复制并显示你提供的 URL 如果该 URL 指向的文件 托管在远程目的地 例如 iCloud 等 系统会先将其下载到本地 请注意 你提供的文件 副本的内容已呈现 你对所呈现的文件进行的 任何编辑 如图像上的标记 不会写回到你提供的 URL 中 要想了解实际效果 让我们一起看看 Xcode
在向 App 添加拖动支持之前 让我快速向你介绍一下该 App 通过该 App 你可查看项目进度 并查看 其他团队成员共享的文件列表 现在我们有一个显示 FileView 的列表视图 既然我们希望能够拖出每个文件 就需要将每个 FileView 变成一个拖动源 由此 我将 onDrag 修饰符添加到 FileView 上 onDrag 修饰符需要 一个 NSItemProvider 我将返回一个 item provider 其中包含在 FileView 中 显示文件的 URL
在模拟器中构建并运行 App 现在我可以从文件视图中拖出文件 并在新的快速查看 窗口中查看该文件 即使关闭 App 该文件的预览仍会照常显示 通过添加这几行代码 我就在 App 中启用了拖放功能 并实现在随意使用 App 的同时 可以在单独窗口中查看内容的功能 现在 让我们看看 网站要如何实现类似功能 自 iOS 12 以来 网站已经 能够通过 AR 属性标记链接 在 iPhone 和 iPad 上的 AR 快速查看中 连接并查看 3D 内容 当你在 xrOS 上打开 带有标记的 3D 内容链接时 Safari 浏览器将在 新的快速查看窗口中 以 3D 形式呈现内容 在 iOS 和 iPadOS 中 已支持 AR 内容链接的网站 会将此功能延续到 xrOS 上 无需额外操作 xrOS 还支持自定义选项 例如禁用内容缩放 关于自定义选项的更多信息 请参见 WWDC19 的 “AR 快速查看深入”讲座 如果你尚未对网站进行设置 要想通过 Safari 浏览器展示 3D 内容 你可以像这样标记你的链接 将 rel="ar" 添加到链接或锚元素中 Safari 浏览器 不会在轻点时进行导航 相反 Safari 浏览器 将在网站旁的快速查看窗口中 以 3D 形式呈现该文件 让我们转到 Safari 浏览器来看看吧 现在你看到的是我们的 AR 快速查看图库页面 此处用 Safari 浏览器打开 此页面链接着许多 3D 模型 我们随意打开几个 点击此茶壶的链接 下载该 3D 模型并在 快速查看窗口中呈现该模型 下载成功后 模型就会立即打开 点击此杯子的链接 并将其放置在茶壶和 Safari 浏览器旁边 对于电子商务网站来说 这真的很好用 购物时 你可能会想在 共享空间中查看或在某位置放置商品 从而判断其是否适合你 我们刚刚介绍了文件的呈现 即在快速查看窗口中 在 App 之外预览文件 在某些用例中 你可能希望直接 在 App 内预览文件 在 App 内显示 快速查看内容非常简单 在 SwiftUI 中 将 URL 传给 QuickLookPreview 函数即可 使用 QuickLookPreview 呈现文件时 预览将以表格的形式 显示在视图的内容之上 如果你希望预览时 进行更多自定义操作 你可以将此处改为 QLPreviewController 如果你要在 xrOS 中 继续使用 iOS App quickLookPreview 或 QLPreviewController API 的 现有功能将免费继承 下面 让我们跳到模拟器 看看在我们的 Project Tracker App 中能如何利用这一点 在这个视图中 我可以先审查团队的新设计 再将其交给业主审核 现在 我可以看到文件列表 但实际上无法预览任何文件 让我们转到 Xcode 看看是否可以解决这个问题 这是我现在的视图 要想直接在 App 中预览文件 我会先导入 QuickLook 然后添加 SwiftUI quickLookPreview 函数 传递我想要预览的所有文件 以及我最初想要选择的特定文件
让我们运行一下 看看效果如何
回到 App 现在当我选择此视图时 可以看到一张带有预览入口的表格 直接出现在 App 中 我可以使用工具栏中的导航控件 循环浏览文件 并在发送给房主之前 确认文件一切正常 直接在 App 中 呈现文件预览易如反掌 传递 URL 到 quickLookPreview 函数 也十分简单 现在我们已经介绍了该平台上 两种类型的快速查看 下面看看支持预览的文件类型 快速查看可以支持各常见的文件类型 包括图像、视频、 PDF 和 USDZ 文件 快速查看中显示的立体图像和视频 效果与照片一样精美 以上就是对 xrOS 中 快速查看功能的简单介绍 现在我们回顾一下今天的所有内容 我们讨论了 快速查看能为 App 提供的 丰富的预览和编辑功能 随后讨论了 Windowed Quick Look 一种 App 使用 快速查看预览内容的新方法 以及 Windowed Quick Look 提供的各个功能 如多重预览支持 有了这个功能 你就可以 在 App 外查看相关内容 享受立体沉浸式 3D 内容观看 和同播共享支持 接着我们讨论了 App 如何简化自身工作流程 并通过添加拖放功能 来利用快速查看窗口 以及网站如何在 Safari 浏览器中 利用快速查看窗口呈现 3D 内容 我们还看到 在 SwiftUI 中 App 内快速查看内容是多么简单 如果你安装的 App 已经使用过快速查看 你几乎无需任何操作 就能在此平台上 获得出色的快速查看体验 同样 已经链接到 AR 内容的网站 也将免费保留该功能 快速查看为 App 提供简约、强大 和安全的文件查看体验 我们迫不及待地想 看看你会在 xrOS 中 使用快速查看进行哪些操作 ♪
-
-
5:15 - drag support for quick look from apps
import Foundation import SwiftUI import UniformTypeIdentifiers struct FileList: View { @State var files: [File] @State var previewedURL: URL? = nil @State var selectedFile: File? { didSet { self.previewedURL = selectedFile?.url } } var body: some View { List(files, selection: $selectedFile) { file in Button(file.name) { selectedFile = file } .onDrag { return NSItemProvider(contentsOf: file.url) ?? NSItemProvider() } } } }
-
8:45 - swiftUI quick look preview function
import Foundation import SwiftUI struct FileList: View { @State var files: [File] @State var previewedURL: URL? = nil @State var selectedFile: File? { didSet { self.previewedURL = selectedFile?.url } } var body: some View { List(files, selection: $selectedFile) { file in Button(file.name) { selectedFile = file } } .quickLookPreview($previewedURL, in: files.map { $0.url }) } }
-
-
正在查找特定内容?在上方输入一个主题,就能直接跳转到相应的精彩内容。
提交你查询的内容时出现错误。请检查互联网连接,然后再试一次。