Login failed if using reflection

The below login code in my Android application has been working fine up to yesterday.
Field userServiceField = backendlessClass.getDeclaredField(“UserService”);
userServiceField.setAccessible(true);
Object userServiceObject = userServiceField.get(backendlessClass);
Class<?> userServiceClass = userServiceObject.getClass();
Method loginMethod = userServiceClass.getDeclaredMethod(“login”, String.class, String.class, boolean.class);
Object backendlessUserObject = loginMethod.invoke(userServiceObject, username, password, true);
Today, without any changes, it failed with the following error:
ava.lang.reflect.InvocationTargetException
02-23 16:57:00.573 14877-15040/com.local.keyn.k1st W/System.err: at java.lang.reflect.Method.invoke(Native Method)
02-23 16:57:00.573 14877-15040/com.local.keyn.k1st W/System.err: at java.lang.reflect.Method.invoke(Method.java:372)
Caused by: java.lang.NullPointerException: Attempt to invoke interface method ‘java.lang.String android.content.SharedPreferences.getString(java.lang.String, java.lang.String)’ on a null object reference
Is there any update on backendless server side that I need to update my code?
Thanks
Key
(PS:I tested static call, the login works.)

Have you updated to the latest SDK?

Yes, I did yesterday and still the same error.

It seems to be something at our end. I’m still looking into it.

Thanks.

Good news that my last week version with the same reflection still works.
Thanks

Here’s what I tried - worked without any problems:

    final Activity activity = this;
    Thread t = new Thread(new Runnable() {
        @Override
        public void run() {
            try {
                String APPLICATION_ID = "757E349F-XXX-my-app-id";
                final String SECRET_KEY = "115455F0-XXX-android-secret-key";
                Backendless.initApp(activity, APPLICATION_ID, SECRET_KEY, "v1");


                Class backendlessClass = Class.forName("com.backendless.Backendless");
                Field userServiceField = backendlessClass.getDeclaredField("UserService");


                userServiceField.setAccessible(true);


                Object userServiceObject = userServiceField.get(backendlessClass);


                Class&lt;?&gt; userServiceClass = userServiceObject.getClass();


                Method loginMethod = userServiceClass.getDeclaredMethod("login", String.class, String.class, boolean.class);


                Object backendlessUserObject = loginMethod.invoke(userServiceObject, "mark@backendless.com", "mypassword", true);
                Log.i( "MY APP", "User logged in" );
            } catch (Throwable t) {
                Log.e("MY APP", t.toString());
            }
        }
    });


    t.start();