0

J'essaie d'intégrer Facebook connexion à mon application via Firebase. Lorsque l'utilisateur clique sur le bouton "Continuer avec Facebook", je vois une barre de progression bleue, puis le texte sur le bouton se change en "déconnexion". J'ai l'intention d'ouvrir une autre activité lorsque la connexion réussit. J'ai utilisé la méthode startActivity() pour cela. Cependant, rien ne se passe. S'il vous plaît aider!Comment puis-je démarrer ma MainActivity après Facebook Login to Android app?

est Ci-dessous l'extrait de la méthode de mon login Activité

 callbackManager = CallbackManager.Factory.create(); 
    // Register your callback 
    LoginManager.getInstance().registerCallback(callbackManager, 
      // If the login attempt is successful, then call onSuccess and pass the LoginResult 
      new FacebookCallback<LoginResult>() { 
       @Override 
       public void onSuccess(LoginResult loginResult) { 

        // The HomeScreen.class should load, it is not happening. 
        startActivity(new Intent(getApplicationContext() ,HomeScreen.class)); 
        // I get this Log on my screen, which is proof that this loop is executed 
        Log.w("TAG", "User ID: " + 
          loginResult.getAccessToken().getUserId() + "\n" + 
          "Auth Token: " + loginResult.getAccessToken().getToken()); 
       } 
       // If the user cancels the login, then call onCancel 
       @Override 
       public void onCancel() { 
        Toast.makeText(getApplicationContext(), 
          "Canceled login through Facebook",Toast.LENGTH_LONG).show(); 
       } 
       // If an error occurs, then call onError 
       @Override 
       public void onError(FacebookException exception) { 
        Toast.makeText(getApplicationContext(), 
          " Facebook Login failed!",Toast.LENGTH_LONG).show(); 
        Log.w("FB failed", exception); 
       } 
      }); 

Je permettais pour se connecter Google aussi par Firebase, pour cela, je l'ai écrit la méthode onActivityResult onCreate(). Il est ce -

public void onActivityResult(int requestCode, int resultCode, Intent data) { 
    super.onActivityResult(requestCode, resultCode, data); 

    // Result returned from launching the Intent from GoogleSignInApi.getSignInIntent(...); 
    if (requestCode == RC_SIGN_IN) { 
     GoogleSignInResult result = Auth.GoogleSignInApi.getSignInResultFromIntent(data); 
     if (result.isSuccess()) { 
      // Google Sign In was successful, authenticate with Firebase 
      GoogleSignInAccount account = result.getSignInAccount(); 
      firebaseAuthWithGoogle(account); 

     } else { 
      // Handle failed signin here 
      Toast.makeText(getApplicationContext(), 
        "Google Sign In Failed, Please try with Facebook or Email!", Toast.LENGTH_LONG).show(); 
     } 
    } 
    callbackManager.onActivityResult(requestCode, resultCode, data); 

} 

Répondre

0

essayez ceci:

public void onSuccess(LoginResult loginResult) { 

      Intent intent = new Intent(loginActivity.this,HomeScreen.class); 
      startActivity(intent); 

      } 
+0

Hmm, non n'a pas fonctionné! – Chirag

0

Si que vous utilisez fragment d'ajouter à vous fb Connexion bouton

buttonLogin.setFragment(this); 

et dans votre méthode onSuccess(), essayez ce

startActivity(new Intent(getActivity() ,HomeScreen.class)); 
0

Essayez d'utiliser permissio NS lorsque vous essayez de vous connecter avec Facebook. Par exemple:

LoginManager.getInstance().logInWithReadPermissions(getActivity(), Arrays.asList("public_profile", "email", "user_birthday", "user_photos"));