Search in sources :

Example 1 with LoginManager

use of com.facebook.login.LoginManager in project FirebaseUI-Android by firebase.

the class FacebookProvider method startLogin.

@Override
public void startLogin(Activity activity) {
    sCallbackManager = CallbackManager.Factory.create();
    LoginManager loginManager = LoginManager.getInstance();
    loginManager.registerCallback(sCallbackManager, this);
    List<String> permissionsList = new ArrayList<>(mScopes);
    // Ensure we have email and public_profile scopes
    if (!permissionsList.contains(EMAIL)) {
        permissionsList.add(EMAIL);
    }
    if (!permissionsList.contains(PUBLIC_PROFILE)) {
        permissionsList.add(PUBLIC_PROFILE);
    }
    // Log in with permissions
    loginManager.logInWithReadPermissions(activity, permissionsList);
}
Also used : LoginManager(com.facebook.login.LoginManager) ArrayList(java.util.ArrayList)

Example 2 with LoginManager

use of com.facebook.login.LoginManager in project react-native-fbsdk by facebook.

the class FBLoginManagerModule method logInWithPublishPermissions.

/**
     * Attempts a Facebook login with the specified publish permissions.
     * @param permissions must be one of the provided publish permissions. See
     *                    <a href="https://developers.facebook.com/docs/facebook-login/permissions">
     *                    Facebook login permissions</a>.
     * @param promise Use promise to pass login result to JS after login finish.
     */
@ReactMethod
public void logInWithPublishPermissions(ReadableArray permissions, final Promise promise) {
    final LoginManager loginManager = LoginManager.getInstance();
    loginManager.registerCallback(mCallbackManager, new LoginManagerCallback(promise));
    Activity activity = getCurrentActivity();
    if (activity != null) {
        loginManager.logInWithPublishPermissions(activity, reactArrayToJavaStringCollection(permissions));
    }
}
Also used : LoginManager(com.facebook.login.LoginManager) Activity(android.app.Activity) ReactMethod(com.facebook.react.bridge.ReactMethod)

Example 3 with LoginManager

use of com.facebook.login.LoginManager in project facebook-android-sdk by facebook.

the class SettingsFragment method onListItemClick.

@Override
public void onListItemClick(ListView l, View view, int position, long id) {
    slotManager.setCurrentUserSlot(position);
    Slot newSlot = slotManager.getSelectedSlot();
    if (newSlot.getAccessToken() == null) {
        final LoginManager manager = LoginManager.getInstance();
        manager.setLoginBehavior(newSlot.getLoginBehavior());
        manager.logInWithReadPermissions(this, null);
    } else {
        AccessToken.setCurrentAccessToken(newSlot.getAccessToken());
    }
}
Also used : LoginManager(com.facebook.login.LoginManager)

Example 4 with LoginManager

use of com.facebook.login.LoginManager in project facebook-android-sdk by facebook.

the class SettingsFragment method setUpCallbacks.

private void setUpCallbacks() {
    callbackManager = CallbackManager.Factory.create();
    LoginManager manager = LoginManager.getInstance();
    manager.registerCallback(callbackManager, new FacebookCallback<LoginResult>() {

        @Override
        public void onSuccess(LoginResult loginResult) {
            Profile.fetchProfileForCurrentAccessToken();
        }

        @Override
        public void onError(FacebookException exception) {
            AccessToken.setCurrentAccessToken(null);
            currentUserChanged();
        }

        @Override
        public void onCancel() {
            AccessToken.setCurrentAccessToken(null);
            currentUserChanged();
        }
    });
    profileTracker = new ProfileTracker() {

        @Override
        protected void onCurrentProfileChanged(Profile oldProfile, Profile currentProfile) {
            Slot currentSlot = slotManager.getSelectedSlot();
            AccessToken currentAccessToken = AccessToken.getCurrentAccessToken();
            if (currentSlot != null && currentAccessToken != null && currentProfile != null) {
                currentSlot.setUserInfo(new UserInfo(currentProfile.getName(), currentAccessToken));
                currentUserChanged();
            }
        }
    };
}
Also used : LoginManager(com.facebook.login.LoginManager) ProfileTracker(com.facebook.ProfileTracker) FacebookException(com.facebook.FacebookException) AccessToken(com.facebook.AccessToken) LoginResult(com.facebook.login.LoginResult) Profile(com.facebook.Profile)

Example 5 with LoginManager

use of com.facebook.login.LoginManager in project react-native-fbsdk by facebook.

the class FBLoginManagerModule method logInWithReadPermissions.

/**
     * Attempts a Facebook login with the specified read permissions.
     * @param permissions must be one of the provided read permissions. See
     *                    <a href="https://developers.facebook.com/docs/facebook-login/permissions">
     *                    Facebook login permissions</a>.
     * @param promise Use promise to pass login result to JS after login finish.
     */
@ReactMethod
public void logInWithReadPermissions(ReadableArray permissions, final Promise promise) {
    final LoginManager loginManager = LoginManager.getInstance();
    loginManager.registerCallback(mCallbackManager, new LoginManagerCallback(promise));
    Activity activity = getCurrentActivity();
    if (activity != null) {
        loginManager.logInWithReadPermissions(activity, reactArrayToJavaStringCollection(permissions));
    }
}
Also used : LoginManager(com.facebook.login.LoginManager) Activity(android.app.Activity) ReactMethod(com.facebook.react.bridge.ReactMethod)

Aggregations

LoginManager (com.facebook.login.LoginManager)5 Activity (android.app.Activity)2 ReactMethod (com.facebook.react.bridge.ReactMethod)2 AccessToken (com.facebook.AccessToken)1 FacebookException (com.facebook.FacebookException)1 Profile (com.facebook.Profile)1 ProfileTracker (com.facebook.ProfileTracker)1 LoginResult (com.facebook.login.LoginResult)1 ArrayList (java.util.ArrayList)1