微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

用户在 Android 应用程序中看到未经验证的应用程序屏幕

如何解决用户在 Android 应用程序中看到未经验证的应用程序屏幕

我们有使用 fitness API 读取步数的 android 应用程序。

我们的应用已通过 OAuth 验证流程,并且./auth/fitness.activity.read 范围已获批准:

enter image description here

在应用中,我们使用这部分代码请求“健身阅读”权限:

val fitnessOptions = fitnessOptions.builder()
        .addDataType(DataType.TYPE_STEP_COUNT_DELTA,fitnessOptions.ACCESS_READ)
        .build()
    GoogleSignIn.requestPermissions(
        this,1000,GoogleSignIn.getAccountForExtension(requireContext(),fitnessOptions),fitnessOptions
    )

但仍会出现未经验证的 OAuth 同意屏幕:

GCP 技术支持部门没有提供帮助,并要求我们在此处报告此问题。

知道出了什么问题吗?也许有人遇到过类似的问题?

解决方法

该屏幕表明您的应用处于“测试”状态:https://support.google.com/cloud/answer/10311615#zippy=%2Ctesting

您需要将应用切换到生产状态。在此之前,请确认您的应用仅请求已获准使用的范围。如果您的应用使用任何未经批准的敏感范围,您的用户将看到未经验证的应用屏幕。您可以通过检查代码来确定您的应用使用的范围。

,

问题出在 OAuth 客户端 ID。 我们在 Google Cloud Console 中有 2 个项目:proddev。 产品一的 OAuth 同意屏幕已通过验证。

Proddev 项目的客户端 ID 具有相同的包名称和证书,而我的 prod 应用使用了 dev 项目的客户端 ID .

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。