当我单击我网站上的 AR 快速查看图标时,它没有显示 3d 模型,并且我收到消息“无法打开对象”。USDZ 目前托管在 google 存储桶中。问题可能出在我托管 USDZ 的方式上吗?如果是这样,是否有推荐的地方供我托管 USDZ 文件?
3 回答
我在这里发布这个答案,因为这个问题是我遇到的问题的第一个谷歌结果:
当完全按照 Apple 的文档建议引用该usdz文件时,AR 按钮将呈现在预告图的顶部。单击链接的图像时,Safari 会打开“快速查看”屏幕,但会显示“无法打开对象”消息。弹出。但是,当我usdz通过 URL 直接访问文件时,AR 模型确实会正确呈现。
问题是整个站点受到配置有.htaccess文件的 HTTP Basic Auth 的保护。显然,Safari 不会使用现有会话来访问usdz文件,因此无法加载文件。
就我而言,它有助于从站点中删除 HTTP 基本身份验证保护。一旦该站点可公开访问,就可以毫无问题地加载 AR 模型。
嵌入 USDZ 文件的链接以直接使用 AR 场景。
这是多个 usdz 文件的代码:
<html>
<head>
<meta charset="utf-8">
<title>Augmented Reality</title>
</head>
<body>
<div>
<a href="yourDirectory/ar_pixar_file_01.usdz" rel="ar">
<img src="ar_image_01.png" alt="AR Image" width="360" height="240">
</a>
<a href="yourDirectory/ar_pixar_file_02.usdz" rel="ar">
<img src="ar_image_02.png" alt="AR Image" width="360" height="240">
</a>
<a href="yourDirectory/ar_pixar_file_03.usdz" rel="ar">
<img src="ar_image_03.png" alt="AR Image" width="360" height="240">
</a>
</div>
</body>
</html>
此代码片段最重要的部分是
rel="ar"属性,表示附加到图像的链接是指可用于 iOS AR-Viewer 的内容。
将 USDZ 文件托管在 Google Storage 存储桶中应该可以正常工作,只要正确设置存储桶的权限以便您可以访问该文件。如果有任何原因无法打开 USDZ 文件,Safari 将显示“无法打开对象”消息,而且我还没有找到比这更容易获得更多详细信息的方法。
您是否尝试过直接从 Safari 访问 USDZ 文件 url?如果链接、权限等都正确,它应该在浏览器中显示为 zip 文件。
此外,通过在 Mac 上使用 URL 下载 USDZ 文件并确保文件在 Finder 中的“快速查看”中按预期显示,确保 USDZ 文件本身没有问题。
如果您可以分享更多有关您的代码外观以及您尝试过的内容的详细信息,那将会很有帮助。我用于测试的最小代码如下,它在 Google Storage 中运行良好。
<html>
<body>
<a href="example.usdz" rel="ar">
<img src="example.png"/>
</a>
</body>
</html>