我有一个使用Facebook身份验证的Android应用程序,所以我知道用户访问令牌。 在Android应用程序中,我有一个带有WebView的屏幕,可以通过Facebook Comment box从服务器加载页面。
服务器页面(在webView中加载):
<!DOCTYPE html>
<html>
<head>
<style type="text/css">
.fb_ltr{height:100% !important; overflow-y: scroll;}
#u_0_1{position:absolute !important;}
</style>
</head>
<body>
<div id="fb-root"></div>
<script>
(function(d, s, id) {
var js, fjs = d.getElementsByTagName(s)[0];
if (d.getElementById(id)) return;
js = d.createElement(s); js.id = id;
js.src = "http://connect.facebook.net/he_IL/all.js#xfbml=1&appId=MY_APP_ID";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));
</script>
<div class="fb-comments" data-href="MY_URL" data-width="470" data-num-posts="10"></div>
</body>
</html>
当我使用WebView打开该屏幕时,我需要再次登录FaceBook
有没有办法通过WebView传递访问令牌(或其他参数)?
注意:如果使用WebView
答案 0 :(得分:0)
不,您无法在原生应用中获取访问令牌,并在网页浏览中为该用户创建了登录会话 -
如果您需要用户使用Facebook的基于Web的服务,例如社交插件,那么他们更有可能在主设备浏览器(例如Safari或Chrome)上登录Facebook,所以也许您可以考虑打开它一个webview?