java - 无法解析方法 Facebook AccessToken

标签 java android facebook parse-platform

我已将 session 更改为访问 token ,但它无法解析 getCurrentAccessToken 和 isOpened 的方法

// Fetch Facebook user info if the session is active
        AccessToken token = ParseFacebookUtils.getCurrentAccessToken();
        if (token != null && token.isOpened()) {
            makeMeRequest();
        }

旧代码是

   // Fetch Facebook user info if the session is active
        Session session = ParseFacebookUtils.getSession();
        if (session != null && session.isOpened()) {
            makeMeRequest();
        }
    }

最后我像下面这样编辑了它。并且应该代替 ParseFacebookUtils 的 getSession() 使用?

 // Fetch Facebook user info if the session is active
        AccessToken token = AccessToken.getCurrentAccessToken();
        if (token != null && token.isExpired()) {
           ParseFacebookUtils.logInInBackground(token); makeMeRequest();
        }

最佳答案

使用 AccessToken.getCurrentAccessToken(),检查 token 是否过期。

AccessToken token = ParseFacebookUtils.getController().getCurrentAccessToken();

if (token != null && !token.isExpired())
{
    // the user is logged-in with valid tocken
}

每次都会有一个激活的AccessToken,可以通过ParseFacebookUtils库自动设置。所以你只需检查当前 token 。

这里唯一的问题是 ParseFacebookUtils.getController()private,因此只需在 Utils 类中将其更改为 public

 public static FacebookController getController() {
    synchronized (lock) {
      if (controller == null) {
        controller = new FacebookController();
      }
      return controller;
    }
  }

关于java - 无法解析方法 Facebook AccessToken,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34973297/

相关文章:

android - 如何在 Android 中将 TextView 分成 2 个独立的 TextView

android - AsyncTask 超过几秒钟?

java - 如何正确管理 OutputStream 以避免资源泄漏错误

java - 找不到 Array.equal(charAt)

java - Android Studio 在 Fedora 22 上崩溃

java - Ant 释放--> Ant : command not found

python - 需要用 facebook.py 列出所有 friend

facebook - 使用 HTTPS 时为 "Empty response received"

java - 使用鼠标事件 : Am I doing this correctly?

java - Android ContextWrapper fileList() 看不到我的文件