Android facebook auth使用Facebook应用程序

时间:2013-01-16 20:10:57

标签: android facebook

如何使用已安装的Facebook应用程序静默授权发布消息?我的意思是我看过许多带有授权对话框的例子,但是可以使用已安装的Facebook应用程序来做吗?

1 个答案:

答案 0 :(得分:0)

好吧,好像是一个bug或者不知道是什么。这对我有用:

public void loginToFacebook() {
mPrefs = getPreferences(MODE_PRIVATE);
String access_token = mPrefs.getString("access_token", null);
long expires = mPrefs.getLong("access_expires", 0);

if (access_token != null) {
    facebook.setAccessToken(access_token);
}

if (expires != 0) {
    facebook.setAccessExpires(expires);
}

if (!facebook.isSessionValid()) {
    facebook.authorize(this,
            new String[] { "email", "publish_stream" },
            new DialogListener() {

                @Override
                public void onCancel() {
                    // Function to handle cancel event
                }

                @Override
                public void onComplete(Bundle values) {
                    // Function to handle complete event
                    // Edit Preferences and update facebook acess_token
                    SharedPreferences.Editor editor = mPrefs.edit();
                    editor.putString("access_token",
                            facebook.getAccessToken());
                    editor.putLong("access_expires",
                            facebook.getAccessExpires());
                    editor.commit();
                }

                @Override
                public void onError(DialogError error) {
                    // Function to handle error

                }

                @Override
                public void onFacebookError(FacebookError fberror) {
                    // Function to handle Facebook errors

                }

            });
}
}

从这里开始:http://www.androidhive.info/2012/03/android-facebook-connect-tutorial/