Open Naima-Bashir opened 4 years ago
The underlying issue appears to be related to the feature that allows users to login with different teams. We experienced this on production APK v4.1.0 for Thailand.
Here's the logcat: 06-08 12:01:48.103 8019 8019 E SettingsRepository: java.lang.NullPointerException: Attempt to invoke virtual method 'net.sqlcipher.database.SQLiteDatabase org.smartregister.repository.Repository.getReadableDatabase()' on a null object reference 06-08 12:01:48.103 8019 8019 E SettingsRepository: at org.smartregister.repository.SettingsRepository.querySetting(SettingsRepository.java:119) 06-08 12:01:48.103 8019 8019 E SettingsRepository: at org.smartregister.repository.AllSettings.getSetting(AllSettings.java:100) 06-08 12:01:48.103 8019 8019 E SettingsRepository: at org.smartregister.util.SyncUtils.isAppVersionAllowed(SyncUtils.java:106) 06-08 12:01:48.103 8019 8019 E SettingsRepository: at org.smartregister.view.activity.BaseLoginActivity.isAppVersionAllowed(BaseLoginActivity.java:271) 06-08 12:01:48.103 8019 8019 E SettingsRepository: at org.smartregister.login.presenter.BaseLoginPresenter.attemptLogin(BaseLoginPresenter.java:46) 06-08 12:01:48.103 8019 8019 E SettingsRepository: at org.smartregister.view.activity.BaseLoginActivity.onEditorAction(BaseLoginActivity.java:202) 06-08 12:01:48.103 8019 8019 E SettingsRepository: at android.widget.TextView.onEditorAction(TextView.java:5911) 06-08 12:01:48.103 8019 8019 E SettingsRepository: at com.android.internal.widget.EditableInputConnection.performEditorAction(EditableInputConnection.java:138) 06-08 12:01:48.103 8019 8019 E SettingsRepository: at com.android.internal.view.IInputConnectionWrapper.executeMessage(IInputConnectionWrapper.java:360) 06-08 12:01:48.103 8019 8019 E SettingsRepository: at com.android.internal.view.IInputConnectionWrapper$MyHandler.handleMessage(IInputConnectionWrapper.java:85) 06-08 12:01:48.103 8019 8019 E SettingsRepository: at android.os.Handler.dispatchMessage(Handler.java:106) 06-08 12:01:48.103 8019 8019 E SettingsRepository: at android.os.Looper.loop(Looper.java:164) 06-08 12:01:48.103 8019 8019 E SettingsRepository: at android.app.ActivityThread.main(ActivityThread.java:6518) 06-08 12:01:48.103 8019 8019 E SettingsRepository: at java.lang.reflect.Method.invoke(Native Method) 06-08 12:01:48.103 8019 8019 E SettingsRepository: at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:438) 06-08 12:01:48.103 8019 8019 E SettingsRepository: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:807)
Steps to reproduce on Thailand Production APK:
I cleared the app data and tried to login as the bvbd_test user and got the same error. It appears to be user specific. I had the same issue with the same user after I uninstalled the app and reinstalled it again.
The plans that bvbd_test
was assigned to had expired. After being assigned to another plan the user is able to log in.
Both NTD and and Reveal