设计

隐私设计

更新时间: 2025年10月6日
保持元宇宙的安全和隐私是 Meta 和开发者共同承担的责任。我们在这里概述的要求和建议旨在帮助用户感到安全,在应用中建立信任,最终帮助开发者取得成功。开发沉浸式体验时,重要的是让用户能控制他们与谁互动,让他们能管理谁使用他们的数据。
我们的设备有许多新颖的传感器,它们可以存储或处理多种数据类型,因此,当您请求用户数据时,保护用户提供的数据并保持透明度是至关重要的。

要求

每个开发者都必须向 Meta 提供隐私政策,作为我们的 VRC 隐私政策要求的一部分:
VRC.Quest.Privacy.1 隐私政策网址链接至由应用团队管理的隐私政策声明。
VRC.Quest.Privacy.2
隐私政策明确说明了应用会收集关于用户的哪些数据。
VRC.Quest.Privacy.3
隐私政策明确说明了应用如何使用用户数据。
VRC.Quest.Privacy.4
隐私政策明确说明了用户应如何要求删除已被收集或存储的用户数据。
VRC.Quest.Privacy.5
团队和应用必须通过数据保护检查。
此外,应用只能请求执行功能所需的最少权限,并且不得包含在我们的平台上不受支持的权限。(VRC.Quest.Security.2)。
如要请求特定的功能,您需要完成数据使用情况检查,以确认 API 访问某些平台 SDK 功能符合开发者数据使用政策 (DDUP)
为了帮助用户就是否应该下载您的应用做出明智的决定,您的应用的商店页面将会列出您使用的任何权限,您访问的平台 SDK 功能,以及您的隐私政策。

关于应用隐私标签如何出现在商店清单上的示例

最佳实践

不要请求提供超出您的应用实际所需的更多用户数据。开发者访问的每个 API 都会增加数据使用情况检查的长度,并且每年都需要重新认证。此外,如果用户看到您的应用正在访问他们认为对于您的应用类型而言不寻常的数据,他们可能会不信任您的应用。
请求用户数据时向他们提供背景信息,即使这些数据对应用正常运行来说是必不可少的,也要如此。向用户公开数据收集的目的以及如何使用他们的数据可以建立信任并帮助用户做出明智的决定。如果非必要功能需要用户提供额外的数据,请等到他们尝试使用该功能时再请求提供这些数据。
在应用获得权限后提供快速控制。例如,在应用从用户那里获得麦克风权限后,让他们能在应用中简单快速地静音或取消静音。
创建应用特有的隐私控制。例如,如果您的应用有多玩家大厅,让用户能控制这些大厅是公用的还是仅受邀使用。创建在操作系统级别上未提供的对您的应用有意义的控制。
避免欺骗性的设计模式。在您的应用中,不要通过互动来欺骗用户做有利于您的事情,也不要设计一些元素来让用户难以完成您不想让他们做的事情。一些示例包括:
  • 欺骗用户分享更多信息
  • 利用羞耻或内疚说服用户做某件事
  • 使用会分散注意力或引起困惑的用户界面
  • 使用户取消服务比注册服务更难
尊重用户选择。如果某个功能不依赖于某项权限,不要因为用户不授予这项权限而阻止他们使用此功能。例如,如果用户不授予麦克风权限,不要阻止他们使用多玩家功能。有些玩家可能会选择静默使用应用,开发者应该尊重这种决定。
如果用户未授予应用正常运行所需的关键权限,您可以通过以下代码将用户引导至应用的权限页面:
   val intent = Intent(Settings.ACTION_APPLICATION_DETAILS_SETTINGS)
   val uri = Uri.fromParts("package", activity.getPackageName(), null)
   intent.data = uri
   context.startActivity(intent)
解释要求用户授予被拒权限的原因和相关背景,并提供明确的入口供用户打开设置页面,而不是在未经用户干预的情况下自动触发该操作。

权限的建议和禁止做法

下面列出了向用户请求权限时我们推荐的做法:
推荐在触发权限提示时提供背景信息,说明您的应用为何请求用户提供此数据。
不推荐在启动应用后立即请求权限,因为用户没有关于您的应用为何需要此数据的背景信息。
推荐在原位显示权限请求,以便用户能保留应用请求用户数据的背景信息。
不推荐在灰色空白中显示权限。


资源

  • Meta Quest 数据协议频道可帮助您了解 Meta 的合规性要求,为成功提交应用做准备,并满怀信心地完成初始和后续审核流程。