在尝试使用以下命令获取google auth令牌时,我得到了以下错误
AccountManagerFuture<Bundle> amf = am.getAuthToken(
accounts[0], "finance", null, activity[0], null, null
);
try
{
auth_token = amf.getResult().getString("authtoken");
Log.v("PORTFOLIO", "getting token...: "+auth_token);
}
catch (Exception e)
{
e.printStackTrace();
}我得到了一个看起来有效的令牌,但是当我尝试使用它时,我得到了一个“token expired”错误:
V/PORTFOLIO(11970): <HTML>
V/PORTFOLIO(11970): <HEAD>
V/PORTFOLIO(11970): <TITLE>Token expired</TITLE>
V/PORTFOLIO(11970): </HEAD>
V/PORTFOLIO(11970): <BODY BGCOLOR="#FFFFFF" TEXT="#000000">
V/PORTFOLIO(11970): <H1>Token expired</H1>
V/PORTFOLIO(11970): <H2>Error 401</H2>
V/PORTFOLIO(11970): </BODY>
V/PORTFOLIO(11970): </HTML>同时还包括:
W/DefaultRequestDirector(11970): Authentication error: Unable to respond to any of these challenges: {googlelogin=WWW-Authenticate: GoogleLogin realm="http://www.google.com/accounts/ClientLogin", service="finance"}我有点困惑为什么会发生这种情况,因为它以前工作正常。如何获取“未过期”的令牌?我可能做了一些非常错误的事情。如果任何人有一个适当的认证令牌教程的链接,那也会有帮助。
发布于 2011-02-09 11:56:32
看起来我需要使用invalidateAuthToken()。
https://stackoverflow.com/questions/4941091
复制相似问题