2013-02-13 138 views
2

我在我的android应用程序中实现了http://android-developers.blogspot.fi/2013/01/verifying-back-end-calls-from-android.html。我加了一个客户端ID在我们的谷歌API项目的开发版本的应用并取得了android应用要求id_token谷歌oauth INVALID_AUDIENCE当请求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(所以我测试了开发client_id和来自昨天的未修改代码,结果相同。),我已经检查过在创建时确实使用了正确的SHA1客户端ID和我已经重建了两个版本的应用程序,并测试了多个设备和谷歌帐户。

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

编辑:看起来我真的打破了一些东西,因为在第三个项目中创建一个新的客户端ID使我能够在不更改代码的情况下再次获取id_token。

回答

2

Google处理新创建的client_ids(它不会影响实时应用程序,只有刚新注册的应用程序)存在一个错误(因为已修复)。你在过去几天再次尝试过吗?

+0

看来我以前创建的非工作client_id在我的一周假期中奇迹般地转化为工作的client_id。谢谢。 – JNissi 2013-02-26 06:12:04