如何在Android模拟器中使用GiTkit调试Cloudendpoints

时间:2015-06-15 13:57:24

标签: android android-emulator google-cloud-endpoints google-identity-toolkit

我在Android Studio中设置了一些Cloud端点,并实现了一个Authenticator(com.google.api.server.spi.config.Authenticator),每次调用云端点都会调用它。

现在我想使用我的身份验证器通过GiTkit(Google Identity Toolkit)检查Android登录。当我调试我的端点时,我可以使用像http://localhost:8080/_ah/api/userApi/v1/login/这样的本地URL来检查它们。 在Android模拟器中,本地环回地址为10.0.2.2,因此URL为http://10.0.2.2:8080/_ah/api/userApi/v1/login/(在Android浏览器中工作)。

但我无法在Google开发者控制台(Web应用程序的客户端ID)中将授权重定向URI从localhost更改为此URL。 (无效的重定向:http://10.0.2.2:8080/_ah/api/userApi/v1/login/必须以公共顶级域名(例如.com或.org)结尾。)

如何在Android模拟器(或手机)中与GiTkit一起调试我的Cloud Endpoint?

1 个答案:

答案 0 :(得分:1)

我从Derek Salama那里得到答案,谷歌小组无法做到这一点:https://groups.google.com/forum/#!topic/google-identity-toolkit/RNyW8xN7q7E

  

嗨,马丁,

     

您是正确的,客户端ID的重定向URI不能是IP   地址,因此http://10.0.2.2:8080/不起作用   http://localhost:8080确实如此。

     

我不知道任何可以让你从中访问localhost的魔法   不使用IP地址的Android模拟器。开发时用   Identity Toolkit和Cloud Endpoints,我首先测试Authenticator   使用端点API资源管理器实现(使用curl后)   获得有效的ID令牌)。一旦我对认证者有信心   工作,我部署到appengine并测试Android应用程序的实时   实例

我现在根据https://developers.google.com/identity/toolkit/web/setup-frontend设置了一个localhost示例网站,以便于调试。