从 Android Facebook SDK v2 升级到 v4 时防止 accessToken 为空?

问题描述 投票:0回答:2

我有一个使用 v2 Facebook Android SDK 的应用程序。我们拥有庞大的活跃用户安装基础,因此保护升级体验非常重要。我已经看到了 如何防止 iOS 上的注销 这里 这里 - 但不是 Android ..

要检测用户是否登录,文档说要这样做:

AccessToken.getCurrentAccessToken() == null

...但是将应用程序从 v2 版本升级到 v4 版本后,首次运行时当前访问令牌始终为 null。这可能是因为令牌的存储位置已更改。

即使我设置了

FacebookSdk.setLegacyTokenUpgradeSupported(true);
,升级 APK 后我们仍然会得到 null。

有没有办法升级 facebook android SDK 并维护用户的身份验证令牌,以便他们拥有无缝升级体验?

android facebook facebook-authentication
2个回答
1
投票

您需要设置

FacebookSdk.setLegacyTokenUpgradeSupported(true);
并确保您正确使用登录按钮。我们缺少一些与片段相关的代码 - 这破坏了流程。

添加旧代币标志并添加缺失的

.setFragment(this)
后,我们的旧代币就起作用了。


1
投票

我也遇到了这个问题,但就我而言,我忘记在调用初始化之前设置应用程序 ID。

FacebookSdk.setApplicationId(fbAppId);
FacebookSdk.setLegacyTokenUpgradeSupported(true);
FacebookSdk.sdkInitialize(getApplicationContext());
© www.soinside.com 2019 - 2024. All rights reserved.