使用 OnClickListener 登录 Android facebook

标签 android facebook authentication onclick authorize

我想为我的应用程序创建一个 facebook 登录按钮。

我的问题是,我想用 OnClickListener 调用“授权”,但 Eclipse 将“授权” 部分标记为错误。它建议将其替换为 authorizeCallback,但这不是解决方案。

似乎我只是错过了什么,但不知道是什么。有什么想法吗?

这是错误发生的地方(facebook.authorize):

LoginButton.setOnClickListener(new OnClickListener() 
{
         public void onClick(View v) 
         {
         facebook.authorize(this, new String[] { "email", "user_birthday" }, new FacebookLoginDialogListener());    
          }});
    }

其余代码:

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) 
{
        super.onActivityResult(requestCode, resultCode, data);
        facebook.authorizeCallback(requestCode, resultCode, data);
}

public class FacebookLoginDialogListener implements DialogListener  
    {
        public void onComplete(Bundle values) {
            SharedPreferences.Editor editor = mPrefs.edit();
            editor.putString("access_token", facebook.getAccessToken());
            editor.putLong("access_expires", facebook.getAccessExpires());
            editor.commit();
            requestUserData(); 
        }

        public void onFacebookError(FacebookError error) {}

        public void onError(DialogError e) {}

        public void onCancel() {}

    }

最佳答案

这样做:

facebook.authorize(YourActivity.this, new String[] { "email", "user_birthday" }, new FacebookLoginDialogListener());

您正在将 OnClickListenerthis 引用传递给该方法,您必须将 Activity 的 Context 传递给方法。

关于使用 OnClickListener 登录 Android facebook,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10349162/

相关文章:

android - 开发安卓应用 |我应该将 minSdkVersion 设置为 10 吗?

javascript - 动态添加“赞”按钮到页面

authentication - 调用 CouchDB 的 _session 总是返回 200

c# - 使用 C# 和 HTTPrequest 登录网站

Android NDK 应用程序库未找到错误

android - buildozer 虚拟机的问题

facebook - 从 Facebook API 搜索

消息 "session does not match current stored session"的 Facebook 访问 token 无效?

c# - Microsoft 身份验证自动登录帐户。用户手动选择账户时导致 "Correlation failed"错误

android - 如何在 flutter 中实现音频流应用和安全存储