Facebook登录-记住令牌/登录以供下次使用吗?

时间:2019-03-27 15:10:34

标签: facebook-graph-api facebook-oauth

我已经在Facebook for Developers页面上创建了APP; Google Play包名称设置为com.seananderson.myapplication,与我的APP中使用的名称匹配,类名称设置为com.seananderson.myapplication.FacebookFragment,这是处理我的Facebook登录名的类/片段。

在我的课堂上,我有:

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
    myView = inflater.inflate(R.layout.fragment_facebook, container, false);

    LoginButton loginButton = myView.findViewById(R.id.login_button);
    loginButton.setReadPermissions(Arrays.asList("email"));

    AccessToken accessToken = AccessToken.getCurrentAccessToken();
    if (accessToken == null || accessToken.isExpired()) {
        LoginManager.getInstance().logOut();
    }

    callbackManager = CallbackManager.Factory.create();

    loginButton.registerCallback(callbackManager, new FacebookCallback<LoginResult>() {
        @Override
        public void onSuccess(LoginResult loginResult) {
            tokenValue = loginResult.getAccessToken().getToken();
            TextView pageNameTV = myView.findViewById(R.id.txtPageID);
            String pageName = pageNameTV.getText().toString();
            new RetrieveFacebookCounter().execute([APICalls]);
        }

        @Override
        public void onCancel() {
            mListener.onCancel();
        }

        @Override
        public void onError(FacebookException error) {
            mListener.onError(error.toString());
        }
    });

我有两个问题:

(1)在调试应用程序时,它提示我每次登录;而不是记住令牌的详细信息。

(2)我看到(从执行代码开始),当代码执行 loginButton.registerCallback 的行时,控制台显示以下错误:

  

E / GraphResponse:{HttpStatus:400,errorCode:100,subErrorCode:33,   errorType:GraphMethodException,errorMessage:不支持的get   请求。 ID为“ [已编辑] ”的对象不存在,不能为   由于缺少权限而加载,或不支持此操作。   请阅读Graph API文档,网址为
  https://developers.facebook.com/docs/graph-api}

登录后,该应用程序可以正常工作,但是下次使用该应用程序时,它需要记住我的详细信息。

我在新的 RetrieveFacebookCounter()。execute([APICalls]); ;中删除了详细信息。他们正在工作。

任何提示/建议都将受到欢迎。

0 个答案:

没有答案