【问题标题】:OAuth2.0 credential already exists in some project, can't change packageId or keystoreOAuth2.0 凭证已存在于某些项目中,无法更改 packageId 或 keystore
【发布时间】:2016-12-06 07:00:31
【问题描述】:

我在一家安卓游戏公司工作。我正在尝试将我们的一个应用程序与 Google Play 游戏服务集成。我在 Google Play 开发者控制台中创建了游戏,并通过应用程序的 Google API 控制台启用了游戏服务 API。应用和游戏都链接到同一个 Google API 控制台项目。

Google Play 游戏服务开发者控制台:

现在,当我尝试将应用程序与游戏关联时,我在尝试对应用程序进行身份验证时收到此错误: "包名和证书指纹组合已经存在"

Google 开发者 API 控制台:

授权应用时出错:

我已经阅读了几个答案,例如this one。我既不能更改应用程序的包名称,也不能更改我们的密钥库。由于我们的游戏有很多用户,更改包 id 会改变它的身份。此外,更改密钥库的含义相同(更改公司签名,因此 Google 现在会将我们视为新开发人员,我们将失去所有特色/营销)。

由于公司很大,人很多,我检查了几乎每个人的所有 Google API 控制台项目,但没有发现包含凭据的项目。

现在唯一的解决方案是联系 Google 支持并要求他们提供包含凭据的 Google API 控制台项目的项目 ID。我试过了,但没有得到他们的回应。

请告诉我是否在任何地方出错或有其他方法可以做到这一点。

【问题讨论】:

    标签: android google-play-services google-play-games google-api-console


    【解决方案1】:

    如果我对您的理解正确,您有一个要向其中添加 Android 应用程序的现有项目,您需要做的是转到开发控制台并选择该项目。否则,请点击顶部的创建项目,输入您的项目名称和 ID,然后点击创建

    注意:您为项目提供的名称是Google Settings 应用程序中Connected apps 列表中的用户显示的名称。

    在左侧导航中,选择 APIs & auth。

    通过将状态设置为 ON 来启用您想要使用的 API。

    在左侧导航中,选择凭据

    根据您的应用点击创建新的客户端 ID创建新的密钥

    通过填写您的 Android 应用详细信息来完成显示的表单。要为您的应用获取 SHA1 指纹,请在终端中运行以下命令:

    keytool -exportcert -alias <keystore_alias> -keystore <keystore_path> -list -v

    例如,您在 Eclipse 中使用调试键,则命令如下所示:

    keytool -exportcert -alias androiddebugkey -keystore ~/.android/debug.keystore -list -v

    那么密钥库密码是“android”。 点击创建

    【讨论】:

    • 嗨,我已经有一个 Google API 控制台项目,并且它链接到 Google Play 开发者控制台中的 Android 应用程序。现在为了与 Google Play 游戏服务集成,我们必须在 Google Play 开发者控制台中创建一个游戏。我们必须将游戏与 android 应用程序以及该应用程序的 Google API 控制台项目相关联。创建游戏时,它会自动在 API 控制台中启用 Google Play 服务 API,并在链接应用程序时尝试创建 OAuth2 凭据。当我做后者时,我遇到了这个问题。我已经尝试过你提到的步骤
    • @AyushJain 你找到解决方案了吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-10-06
    • 1970-01-01
    • 1970-01-01
    • 2013-10-27
    • 1970-01-01
    • 2013-09-22
    • 1970-01-01
    相关资源
    最近更新 更多