如何在Android中实现Facebook评论插件 [英] How to implement facebook comment plugin in Android

查看:112
本文介绍了如何在Android中实现Facebook评论插件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何在Android中实现Facebook评论插件,允许用户将评论发布到自己的墙上,如下图所示?

How to implement Facebook comments plugin in Android, which allows users to post comments to their wall as shown in the image given below ?

推荐答案

也许这不是您要寻找的,但我发现您几乎没有想法可以像Graph API一样开始使用Android上的Facebook社交插件或WebView

maybe this is not what you looking for but i found few ideas that you could start rolling from like there is a Graph API Facebook social plugin on android or in a WebView Android unable to implement facebook comment in a webview due to default browser

如果您设置了已经带有注释的正确域和路径,则应该可以使用. 尚未检查原始路径中没有注释的情况

Should work if you set proper domain and path that already has comments. Haven't checked how it will if original path doesn't have comments

package com.example.ff;


import android.annotation.SuppressLint;
import android.app.Activity;
import android.graphics.Bitmap;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.webkit.CookieManager;
import android.webkit.CookieSyncManager;
import android.webkit.WebView;
import android.webkit.WebViewClient;

public class MainActivity extends Activity {
// changeable public variables 
    public static String APP_KEY = "You're app key";
    public static String BASE_DOMAIN = "http://www.9gag.com";
    public static String PATH_URL = "/tv/p/anNBpr";

    private WebView webView;
    private MainActivity context;



    @SuppressWarnings("deprecation")
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        context = this;
        CookieSyncManager.createInstance(this);
        CookieManager cm = CookieManager.getInstance();
        cm.removeAllCookie();
        webView = (WebView) findViewById(R.id.web_login);
        webView.getSettings().setJavaScriptEnabled(true);
        webView.getSettings().setDomStorageEnabled(true);
        webView.loadDataWithBaseURL(BASE_DOMAIN, 
                "<html><head></head><body><div id=\"fb-root\"></div><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/en_US/all.js#xfbml=1&appId="+APP_KEY+ "\";fjs.parentNode.insertBefore(js, fjs);}(document, 'script', 'facebook-jssdk'));</script><div class=\"fb-comments\" data-href=\""
        +BASE_DOMAIN+PATH_URL+"\" data-width=\"470\"></div> </body></html>", "text/html", null, null);
        webView.setWebViewClient(new WebViewClientActivity());
    }
    public class WebViewClientActivity extends WebViewClient {
        @Override
        public void onPageStarted(WebView view, String url, Bitmap favicon) {
            System.out.println("onPageStarted: " + url);

        }

        @Override
        public boolean shouldOverrideUrlLoading(WebView view, String url) {
            //view.loadUrl(url);
            return true;
        }

        @Override
        public void onPageFinished(WebView webView, String url) {
            System.out.println("onPageFinished: " + url);

        }
    }
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.main, menu);
        return true;
    }

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        // Handle action bar item clicks here. The action bar will
        // automatically handle clicks on the Home/Up button, so long
        // as you specify a parent activity in AndroidManifest.xml.
        int id = item.getItemId();

        return super.onOptionsItemSelected(item);
    }

这篇关于如何在Android中实现Facebook评论插件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆