gpt4 book ai didi

android - Facebook Android SDK : AccessToken. refreshCurrentAccessTokenAsync() 不延长到期时间

转载 作者:太空狗 更新时间:2023-10-29 13:50:52 25 4
gpt4 key购买 nike

我的 Android 应用程序正在使用 Android Facebook SDK 的 LoginManagerAccessToken 类。我们使用 LoginManager.getInstance().logInWithReadPermissions() 将 Facebook 帐户初始链接到我们的服务。此方法工作正常,没有任何问题。

我们遇到的问题是当我们尝试在我们的应用程序启动时(您可以说在后台)刷新 Facebook 访问 token 。为此,我们使用 AccessToken.refreshCurrentAccessTokenAsync(),来自 Facebook's docs声明它延长了访问 token 的到期时间。我会注意到,在这种情况下提供的回调确实触发了 OnTokenRefreshed() 方法,因此它至少看起来在运行。但是,(从我们的后端服务)检查后,我们可以看到自调用 refreshCurrentAccessTokenAsync 以来,该访问 token 的到期日期尚未延长。

这是一个 fragment :

if (AccessToken.getCurrentAccessToken() == null)
{
return;
}

AccessToken.refreshCurrentAccessTokenAsync(new AccessToken.AccessTokenRefreshCallback()
{
@Override
public void OnTokenRefreshed(AccessToken accessToken)
{
Log.d(TAG, "OnTokenRefreshed >> " + accessToken);
}

@Override
public void OnTokenRefreshFailed(FacebookException exception)
{
Log.w(TAG, "OnTokenRefreshFailed >> " + exception.getClass().getSimpleName() + ": " + exception.getMessage(), exception);
}
});

但是,我要再次提到,我们在后端注意到到期日期仍设置为从最初使用 FacebookManager.getInstance().loginWithReadPermissions() 链接时算起的约 60 天.

知道为什么到期日期没有改变吗?任何帮助将不胜感激。

最佳答案

注意事项在文档的细则中:

extends the expiration date, if extension is possible

不再提供仅仅希望延长到期时间来延长访问 token 。看这里:https://developers.facebook.com/docs/facebook-login/access-tokens/refreshing “刷新”功能现在实际上只是刷新权限。当然还有这种莫名其妙的注释

These tokens will be refreshed once per day, for up to 90 days, when the person using your app makes a request to Facebook's servers.

我的意思是,如果应用执行其中一个图形 API 请求,则有效期可能仍会延长至最多 90 天。

关于android - Facebook Android SDK : AccessToken. refreshCurrentAccessTokenAsync() 不延长到期时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47704580/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com