首页 > 解决方案 > google-services.json 中 other_platform_oauth_client 的用途是什么?

问题描述

我从 Firebase 控制台重新下载了google-services.json适用于 Android 的文件,发现突然多了一个字段:

"services": {
    "appinvite_service": {
        "other_platform_oauth_client": [
          {
            "client_id": "xxx.apps.googleusercontent.com",
            "client_type": 2,
            "ios_info": {
              "bundle_id": "com.xxx.xxx",
              "app_store_id": "xxx"
            }
          }
        ]
    }
}

该项目有一个 iOS 和 Android 客户端,所以这个 Android 条目显然引用了 iOS 客户端。

该条目的目的是什么?

标签: firebase

解决方案


目的:

client_id连同)是对您和您的项目通过 Google 开发者控制台 ( https://console.developers.google.com/apis/credentialsclient_type )创建和访问的凭据的引用。当您的应用需要的不仅仅是与 Google 服务的应用端交互时,可以使用这些。

一些例子:

  • 当您启用 OAuth 2.0 以与您的应用程序一起使用时,作为开发人员(或控制台管理员),您可以为您支持的平台(Android、iOS、Web 等)创建一个或多个新凭据条目。因此,Google Developer Console 会为这些凭据生成客户端 ID。根据您的应用程序的需要,您可能希望在向 Google 发送登录请求(Google 登录)时使用此客户端 ID,以便稍后您可以在允许(或拒绝)用户访问之前使用您的服务器对用户进行身份验证到您的应用程序。有关此示例的更多信息:https ://developers.google.com/identity/sign-in/android/offline-access

  • 设置某些服务(例如 Firebase、Admob 或其他相关服务)时,Google 服务会在 Google 控制台中自动创建客户端 ID 和所需凭据。

我希望这个答案能解释这些价值观的目的。


推荐阅读