Backendless.setUrl throws ExceptionInInitializer Error

Backendless Version: 5.2.3
Android Version: 8.0.0

Since version 5.2.3. the app initilization (Backendless.setUrl()) is not working anymore. I tested it with the generated project template downloaded from dashboard.

Exception:

01-30 13:13:59.038 6485-6485/com.mbass.examples E/AndroidRuntime: FATAL EXCEPTION: main
    Process: com.mbass.examples, PID: 6485
    java.lang.ExceptionInInitializerError
        at com.backendless.Backendless.setUrl(Backendless.java:274)
        at com.mbass.examples.MainActivity.onCreate(MainActivity.java:28)
        at android.app.Activity.performCreate(Activity.java:5933)
        at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1105)
        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2251)
        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2360)
        at android.app.ActivityThread.access$800(ActivityThread.java:144)
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1278)
        at android.os.Handler.dispatchMessage(Handler.java:102)
        at android.os.Looper.loop(Looper.java:135)
        at android.app.ActivityThread.main(ActivityThread.java:5221)
        at java.lang.reflect.Method.invoke(Native Method)
        at java.lang.reflect.Method.invoke(Method.java:372)
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:899)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:694)
     Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String com.backendless.AuthKeys.getApplicationId()' on a null object reference
        at com.backendless.AndroidBackendlessPrefs.getApplicationId(AndroidBackendlessPrefs.java:50)
        at com.backendless.Backendless.<clinit>(Backendless.java:129)
        at com.backendless.Backendless.setUrl(Backendless.java:274) 
        at com.mbass.examples.MainActivity.onCreate(MainActivity.java:28) 
        at android.app.Activity.performCreate(Activity.java:5933) 
        at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1105) 
        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2251) 
        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2360) 
        at android.app.ActivityThread.access$800(ActivityThread.java:144) 
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1278) 
        at android.os.Handler.dispatchMessage(Handler.java:102) 
        at android.os.Looper.loop(Looper.java:135) 
        at android.app.ActivityThread.main(ActivityThread.java:5221) 
        at java.lang.reflect.Method.invoke(Native Method) 
        at java.lang.reflect.Method.invoke(Method.java:372) 
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:899) 
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:694)

Thanks, Kevin. We will investigate. Out of curiosity, why do you need to change the API endpoint URL?

Regards,
Mark

Thanks for your answer.
I just saw that this is not necessary…But then the error occurs on Backendless.initApp().

Best regards

I had reproduced the issue and created internal ticket BKNDLSS-18067 We will fix it as soon as it possible

1 Like

The problem was fixed.
Please, see https://github.com/Backendless/Android-SDK/releases/tag/5.2.4

@kevin, the updated build is now also available in Maven (version 5.2.4)