Skip to content

Android: java.lang.NullPointerException: Attempt to invoke virtual method 'boolean java.lang.String.equals(java.lang.Object)' on a null object reference #57

@costimuraru

Description

@costimuraru

Awesome job on this library!
I managed to get it work on Desktop, but on Android I'm getting a NullPointerException.

Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'boolean java.lang.String.equals(java.lang.Object)' on a null object reference
        at com.facebook.login.LoginClient.getLogger(LoginClient.java:373)

in com.facebook.login.LoginClient.getLogger pendingRequest.getApplicationId() seems to be null.

The code I'm using:

Gdx.app.setLogLevel(Application.LOG_DEBUG);
GDXFacebookConfig config = new GDXFacebookConfig();
config.APP_ID = "replaced-this-with-actual-app-id"; // required
config.PREF_FILENAME = ".facebookSessionData"; // optional
config.GRAPH_API_VERSION = "v2.6"; // optional, default is v2.6
GDXFacebook facebook = GDXFacebookSystem.install(config);

Array<String> permissions = new Array<String>();
permissions.add("email");
permissions.add("public_profile");
permissions.add("user_friends");

facebook.signIn(SignInMode.READ, permissions, new GDXFacebookCallback<SignInResult>() {
    @Override
    public void onSuccess(SignInResult result) {
        // Login successful
    }

    @Override
    public void onError(GDXFacebookError error) {
        // Error handling
    }

    @Override
    public void onCancel() {
        // When the user cancels the login process
    }

    @Override
    public void onFail(Throwable t) {
        // When the login fails
    }
});

Did I miss something

Full stack trace:

D/gdx-facebook (1.4.1): gdx-facebook (1.4.1) for Android installed successfully.
D/gdx-facebook (1.4.1): Could not load existing accessToken.
D/gdx-facebook (1.4.1): Starting GUI sign in.
I/OMXClient: IOmx service obtained
I/BaseScreen: Disposing.
I/AndroidInput: sensor listener tear down
I/AndroidGraphics: paused
W/com.facebook.appevents.internal.ActivityLifecycleTracker: Unexpected activity pause without a matching activity resume. Logging data may be incorrect. Make sure you call activateApp from your Application's onCreate method
W/ActivityThread: handleWindowVisibility: no activity for token android.os.BinderProxy@563aa9d
I/OMXClient: IOmx service obtained
D/AndroidRuntime: Shutting down VM
E/AndroidRuntime: FATAL EXCEPTION: main
    Process: com.ph.myapp, PID: 9529
    java.lang.RuntimeException: Unable to resume activity {com.ph.myapp/com.facebook.FacebookActivity}: java.lang.NullPointerException: Attempt to invoke virtual method 'boolean java.lang.String.equals(java.lang.Object)' on a null object reference
        at android.app.ActivityThread.performResumeActivity(ActivityThread.java:3784)
        at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:3816)
        at android.app.servertransaction.ResumeActivityItem.execute(ResumeActivityItem.java:51)
        at android.app.servertransaction.TransactionExecutor.executeLifecycleState(TransactionExecutor.java:145)
        at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:70)
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1808)
        at android.os.Handler.dispatchMessage(Handler.java:106)
        at android.os.Looper.loop(Looper.java:193)
        at android.app.ActivityThread.main(ActivityThread.java:6669)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)
     Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'boolean java.lang.String.equals(java.lang.Object)' on a null object reference
        at com.facebook.login.LoginClient.getLogger(LoginClient.java:373)
        at com.facebook.login.LoginClient.tryCurrentHandler(LoginClient.java:261)
        at com.facebook.login.LoginClient.tryNextHandler(LoginClient.java:216)
        at com.facebook.login.LoginClient.authorize(LoginClient.java:121)
        at com.facebook.login.LoginClient.startOrContinueAuth(LoginClient.java:102)
        at com.facebook.login.LoginFragment.onResume(LoginFragment.java:153)
        at android.support.v4.app.Fragment.performResume(Fragment.java:2133)
        at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1156)
        at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1295)
        at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1277)
        at android.support.v4.app.FragmentManagerImpl.dispatchResume(FragmentManager.java:2164)
        at android.support.v4.app.FragmentController.dispatchResume(FragmentController.java:223)
        at android.support.v4.app.FragmentActivity.onResumeFragments(FragmentActivity.java:509)
        at android.support.v4.app.FragmentActivity.onPostResume(FragmentActivity.java:498)
        at android.app.Activity.performResume(Activity.java:7317)
        at android.app.ActivityThread.performResumeActivity(ActivityThread.java:3776)
        at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:3816) 
        at android.app.servertransaction.ResumeActivityItem.execute(ResumeActivityItem.java:51) 
        at android.app.servertransaction.TransactionExecutor.executeLifecycleState(TransactionExecutor.java:145) 
        at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:70) 
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1808) 
        at android.os.Handler.dispatchMessage(Handler.java:106) 
        at android.os.Looper.loop(Looper.java:193) 
        at android.app.ActivityThread.main(ActivityThread.java:6669) 
        at java.lang.reflect.Method.invoke(Native Method) 
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493) 
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858) 
I/Process: Sending signal. PID: 9529 SIG: 9
Application terminated.

Am I doing something wrong?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions