我正在尝试在webview中实现facebook社交插件,就像官方的android 9gag app在评论中一样。
我加载到webview中的html看起来像这样
<html>
<body>
<div id="fb-root"></div>
<script>
window.fbAsyncInit = function() {
FB.init({
appId : '$APP_ID$', // App ID from the app dashboard
channelUrl : '$DOMAIN$/channel.php', // Channel file for x-domain comms
cookie : true,
status : true, // Check Facebook Login status
xfbml : true // Look for social plugins on the page
});
// Load the SDK asynchronously
(function(d, s, id){
var js, fjs = d.getElementsByTagName(s)[0];
if (d.getElementById(id)) { return;}
js = d.createElement(s); js.id = id;
js.async=true; js.src = "//connect.facebook.net/cs_CZ/all.js";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));
</script>
<div class="fb-comments" data-href="$FB_SOCIAL_URL$" data-width="470" data-num-posts="10"></div>
</body>
</html>
但是当我把它加载到webview中时没有发生任何事情。当我在桌面上使用它时,也没发生任何事情。仅显示空白屏幕。我还尝试从这个答案实现webview的设置Android unable to implement facebook comment in a webview due to default browser,它没有改变任何东西。我不想加载所有url与该facebook插件,但只有该插件本身。有任何想法吗?
答案 0 :(得分:0)
我会将社交部分分开并使用facebook的android sdk。用户可能不会使用Facebook的移动浏览器。如果你使用fb android sdk,体验要好得多。
如果您仍然希望以这种方式执行此操作:您错过了
的结束括号window.fbAsyncInit = function() {