我在我的安卓应用程序中已经集成了Facebook SDK,登录按钮可以正常工作,其他一切也很好。我需要添加webview来实现'like'功能,但是它显示我已经退出登录,Facebook SDK session没有任何作用。我的意思是,如果我使用Facebook SDK登录,webview仍然会显示我已经退出登录状态。那么,我该如何将Facebook SDK session传递给webview session呢?
我在我的安卓应用程序中已经集成了Facebook SDK,登录按钮可以正常工作,其他一切也很好。我需要添加webview来实现'like'功能,但是它显示我已经退出登录,Facebook SDK session没有任何作用。我的意思是,如果我使用Facebook SDK登录,webview仍然会显示我已经退出登录状态。那么,我该如何将Facebook SDK session传递给webview session呢?
没有一种方法可以在webview
上下文中共享来自会话的Android托管访问令牌,您可以查看有关此问题的重复问题。 使用webview共享facebook SDK会话
使用LoginBehavior.SUPPRESS_SSO登录,它使用Web对话框进行Facebook登录。此后,WebView将具有活动的Facebook会话。我已经尝试过Facebook SDK v4.1.0。
loginButton.setLoginBehavior(LoginBehavior.SUPPRESS_SSO);
或者
loginManager.setLoginBehavior(LoginBehavior.SUPPRESS_SSO);
如其他人所提到的,通过JavaScript接口或URL查询将令牌传递给WebView。
您是否仅因为点赞按钮而使用了WebView?自Android 3.19.0以来,它可用于Android。 https://developers.facebook.com/docs/sharing/android#buttons