Launch new activity after successful Facebook login, Facebook Api v.4.0 | Android

懵懂的女人 提交于 2020-01-17 03:49:45

问题


I'm an android noob and want to use Facebook Api to login to my app. I have managed to setup Facebook login using LoginButton class on a fragment from Facebook documentation. Now I can login using Facebook, each time I succesfully login I get the logout button but I need to be able to redirect to another activity after successful login or when logged in. How can I track login status and redirect since in Api 4.0 Session doesn't work?


回答1:


Make sure your Activity or Fragment implements FacebookCallback (my exampel here uses a Fragment, but its easy to adapt.) Make sure you have the following member variables:

CallbackManager mFacebookCallbackManager;
LoginButton mfbLoginButton;

Then setup those variables in your onCreate:

    mFacebookCallbackManager = CallbackManager.Factory.create();
    mfbLoginButton = (LoginButton) getView().findViewById(R.id.facebook_login_button);
    mfbLoginButton.setFragment(this);
    mfbLoginButton.registerCallback(mFacebookCallbackManager, this);

Ensure you add this to enable the callback:

@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);
    mFacebookCallbackManager.onActivityResult(requestCode, resultCode, data);
}

The FacebookCallback will then give you this method:

@Override
public void onSuccess(Object o) {
    Toast.makeText(getActivity(), "Facebook onSuccess", Toast.LENGTH_SHORT).show();
}

You can start your new activity from onSuccess. Good luck.



来源:https://stackoverflow.com/questions/30643545/launch-new-activity-after-successful-facebook-login-facebook-api-v-4-0-androi

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!