尝试使用
获取Google身份验证令牌时,我收到以下错误消息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();
}
我获得了一个有效的令牌,但是当我尝试使用它时,我收到了“令牌过期”错误:
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"}
我有点困惑为什么会这样,因为之前它正常工作。如何获得“未过期”令牌?我可能做的事情非常糟糕。如果有人有一个正确的身份验证令牌教程的链接,这也会有所帮助。
答案 0 :(得分:0)
看起来我需要使用invalidateAuthToken()
。