2

我在我的 android 应用程序中实现了http://android-developers.blogspot.fi/2013/01/verifying-back-end-calls-from-android.html 。我在我们的 google api 项目的开发版本中为应用程序添加了一个客户端 ID,并使 android 应用程序请求 id_token

idToken = GoogleAuthUtil.getToken(AuthenticatorActivity.this, accountName, "audience:server:client_id:1234567890.apps.googleusercontent.com");

所有这一切都非常完美。然后我想测试它是否在生产中工作。我在生产版 google api 项目中添加了一个客户端 ID,在代码中使用它并重建了生产版应用程序。从那以后我总是得到

GLS error: INVALID_AUDIENCE <Removed>@gmail.com audience:server:client_id:1234567890.apps.googleusercontent.com

作为响应和具有相同消息的 GoogleAuthException。

我试图一次删除并重新创建一个客户端 ID(所以我只使用昨天的开发客户端 ID 和未修改的代码进行测试,结果相同。),我检查了创建客户端 ID 时我是否真的使用了正确的 SHA1,我已经重建了两个版本的应用程序并使用多个设备和谷歌帐户进行了测试。

我是否通过向两个项目添加具有相同 android 包名称的 client_id 来破坏 google api 项目服务器,还是只是我忽略了一些东西?

编辑:似乎我真的破坏了一些东西,因为在第三个项目中创建一个新的客户端 ID 使我能够再次获取 id_token 而无需更改代码。

4

1 回答 1

2

Google 处理新创建的 client_ids 时存在一个错误(已修复)(它不影响实时应用,仅影响新注册的应用)。你最近几天再试一次吗?

于 2013-02-18T04:24:43.333 回答