Play Integrity API:appLicensingVerdict返回LICENSED的具体场景
Play Integrity API中
appLicensingVerdict字段的判定逻辑与触发场景 核心判定逻辑概述
appLicensingVerdict的判定核心围绕用户是否拥有应用的合法Google Play授权,结合用户账号的应用购买/下载记录、应用安装来源、当前运行环境的签名兼容性等多维度信息综合得出。
各取值的具体触发场景
LICENSED
- 用户通过Google Play商店(含免费下载、付费购买)获取过该应用,且当前设备登录的Google账号与获取授权时的账号一致;
- 设备上的Google账号曾通过Play商店安装过该应用,后续通过Android Studio调试运行时,调试签名与Google Play后台注册的签名体系兼容(如使用关联的上传密钥生成调试包),API会识别保留的授权记录;
- 用户参与该应用的Google Play测试计划(内部测试、封闭测试等),通过Play渠道获取了应用授权;
- 应用为Google Play预安装的系统级应用,用户账号具备合法使用权限。
UNLICENSED
- 用户从未通过Google Play获取过该应用,当前应用通过非Play渠道安装(如APK直装、第三方应用市场);
- 用户曾通过Play安装应用,但后续用非Play渠道的APK覆盖安装,且未重新通过Play获取授权;
- 当前设备登录的Google账号无该应用的任何授权记录(如新账号首次登录设备,未下载/购买过该应用)。
UNEVALUATED
- 设备未安装Google Play服务,或Play服务版本过低,不满足API评估要求;
- 调用Integrity API时缺失必要参数,导致无法完成授权验证;
- 设备处于离线状态,无法连接Google Play服务器获取授权信息;
- 应用签名与Google Play后台注册的签名不匹配,无法关联到Play的授权记录。
Android Studio运行返回LICENSED的原因
你遇到的情况是因为:设备上的Google账号此前已通过Play商店留下了该应用的授权记录,即使后续用Android Studio调试运行,只要调试签名符合Play后台的签名兼容规则,Play Integrity API会读取该账号的历史授权信息,因此返回LICENSED。
内容的提问来源于stack exchange,提问作者user2342558
相关产品推荐
相关产品推荐

