Google Play 游戏目前处于 Beta 版公开测试阶段。

Google Play 游戏的完整性保护

PC 版 Google Play 游戏通过 Play Integrity API 和其他一些 Google Play 功能来支持完整性保护;这些其他功能可确保您的游戏不会遭到不可信来源的篡改或从不可信来源安装。

Play Integrity API

Play Integrity API 有助于保护您的应用和游戏,使其免受可能存在风险的欺诈性互动的危害,让您能够采取适当措施来减少攻击和滥用行为(例如欺诈、欺骗和未经授权的访问)。Play Integrity API 是 SafetyNet Attestation API (SNAA) 和 Play App Licencing API 的承续产品。SNAA 不适用于 Google Play 游戏,因为在验证 Google Play 游戏的完整性时,SNAA 只会返回负面信号。

设备完整性字段

确保您在支持 Google Play 游戏上的某个游戏时,可允许 MEETS_VIRTUAL_INTEGRITYdeviceRecognitionVerdict

deviceIntegrity 字段包含单个值,即 deviceRecognitionVerdict,它表示设备可以在多大程度上强制执行应用完整性检查。默认情况下,deviceRecognitionVerdict 可以具有以下某个标签:

  • MEETS_DEVICE_INTEGRITY:应用正在已安装 Google Play 服务的 Android 设备上运行。设备通过了系统完整性检查,并且满足 Android 兼容性要求。
  • MEETS_VIRTUAL_INTEGRITY:应用正在已安装 Google Play 服务(目前仅限于 Google Play 游戏)的虚拟 Android 环境中运行。该环境满足核心 Android 兼容性要求,并且通过了 Google Play 完整性检查。
  • 无标签(例如,一个空白值):应用正在有攻击迹象(如 API 挂接)或系统被侵迹象(如已启用 root 权限)的设备上运行,或者应用正在未通过 Google Play 完整性检查的非实体设备(如模拟器)上运行。

Play Integrity API 使用 deviceRecognitionVerdict 标签 MEETS_VIRTUAL_INTEGRITY 来指示游戏正在 Google Play 游戏平台运行。以下是 Play Integrity API 发出的表示已通过完整性检查的响应示例:

deviceIntegrity: {
    // "MEETS_VIRTUAL_INTEGRITY" indicates the game is running on Google Play Games
    deviceRecognitionVerdict: ["MEETS_VIRTUAL_INTEGRITY"]
}

如果您的跨平台游戏也在移动设备上提供,请确保您的验证逻辑会检查 MEETS_VIRTUAL_INTEGRITYMEETS_DEVICE_INTEGRITY(因为两者之间互不暗示)。

请勿在 Play 管理中心内开启不可信设备排除设置

Google Play 管理中心内有一项设置,可用于阻止在未通过完整性检查的设备上从 Google Play 安装您的应用

此功能目前与 Google Play 游戏不兼容,并会阻止游戏分发至此平台。请勿在设备目录中启用此排除规则。