Android - Facebook 集成:无法导入 com.facebook.Session

Posted

技术标签:

【中文标题】Android - Facebook 集成:无法导入 com.facebook.Session【英文标题】:Android - Facebook Integration: Impossible to Import com.facebook.Session 【发布时间】:2015-11-20 20:18:18 【问题描述】:

我是 android - facebook 集成的新手。我正在尝试将我的应用程序与 facebook 集成,所以我按照facebook tutorial 上的所有步骤进行操作,并且一切正常(至少我可以执行登录)。 但是当我尝试使用以下代码时,我意识到我无法从 Facebook 导入库:

会话会话 = Session.getActiveSession();

我使用的是 Android Studio,IDE 只给了我导入 android.service.textservice.SpellCheckerService 的选项,但我想正确的导入是 com.facebook .Session关于我在这里缺少什么的任何想法?PS: FB SDK 版本是 facebook-android-sdk-4.5.1

【问题讨论】:

【参考方案1】:

环顾四周,我意识到新的 facebook SDK 上的 Session 类没有被使用。 相反,我发现了类似的东西,它解决了我的问题:

loginButton = (LoginButton)findViewById(R.id.login_button);
loginButton.registerCallback(callbackManager, new FacebookCallback<LoginResult>() 
@Override
public void onSuccess(LoginResult loginResult) 
    Log.e("Content", "User ID: " + loginResult.getAccessToken().getUserId() + "\n" + "Auth Token: " + loginResult.getAccessToken().getToken());


@Override
public void onCancel() 
    //"If login attempt canceled.";


@Override
public void onError(FacebookException e) 
    //"If login attempt Failed.";
);

【讨论】:

【参考方案2】:

Facebook 删除新 SDK 中的会话。 check my answer for same question

我给出了完整的集成代码。

您可以通过此代码检查用户是否已登录。

profile = Profile.getCurrentProfile().getCurrentProfile();
if (profile != null) 
	// user has logged in

 else 
	// user has not logged in
   

【讨论】:

以上是关于Android - Facebook 集成:无法导入 com.facebook.Session的主要内容,如果未能解决你的问题,请参考以下文章

asmack 中的 MessageListener 以集成无法绑定到任何小部件的 facebook 聊天

无法在 Android 上编写 jarlist 缓存文件 Facebook SDK

Facebook 集成到 Android 中?

已安装 Facebook 应用程序时,Android 中的 Facebook 集成不起作用

android应用集成facebook登录

Android 应用程序集成FaceBook 登录