Description
After upgrading the meeting sdk to version 5.11.3, our users started experiencing a new crash. Below are some stack traces. There are few different stack traces but the ultimate cause is always the PreferenceUtil.saveBooleanValue. We use the default meeting UI and from our firebase logs we see that over 85% of the time, the crash happens within the first 5 seconds of the user starting to use the app. Thanks in advance for the help!
Fatal Exception: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.whova.event/com.zipow.videobox.MeetingEndMessageActivity}: java.lang.NullPointerException: Attempt to invoke interface method 'android.content.SharedPreferences$Editor android.content.SharedPreferences.edit()' on a null object reference
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:4035)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:4201)
at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:103)
at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135)
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2438)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loopOnce(Looper.java:226)
at android.os.Looper.loop(Looper.java:313)
at android.app.ActivityThread.main(ActivityThread.java:8669)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:571)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1135)
Caused by java.lang.NullPointerException: Attempt to invoke interface method 'android.content.SharedPreferences$Editor android.content.SharedPreferences.edit()' on a null object reference
at us.zoom.libtools.storage.PreferenceUtil.saveBooleanValue(PreferenceUtil.java:3)
at us.zoom.libtools.utils.h.p(ZmDeviceUtils.java:24)
at us.zoom.libtools.utils.h.n(ZmDeviceUtils.java:7)
at us.zoom.uicommon.activity.ZMActivity.onCreate(ZMActivity.java:34)
at com.zipow.videobox.MeetingEndMessageActivity.onCreate(MeetingEndMessageActivity.java:1)
at android.app.Activity.performCreate(Activity.java:8290)
at android.app.Activity.performCreate(Activity.java:8270)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1329)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:4009)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:4201)
at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:103)
at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135)
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2438)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loopOnce(Looper.java:226)
at android.os.Looper.loop(Looper.java:313)
at android.app.ActivityThread.main(ActivityThread.java:8669)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:571)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1135)
Fatal Exception: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.whova.event/com.whova.bulletin_board.activities.ZoomMeetingActivity}: java.lang.NullPointerException: Attempt to invoke interface method 'android.content.SharedPreferences$Editor android.content.SharedPreferences.edit()' on a null object reference
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:4035)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:4201)
at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:103)
at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135)
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2438)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loopOnce(Looper.java:226)
at android.os.Looper.loop(Looper.java:313)
at android.app.ActivityThread.main(ActivityThread.java:8669)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:571)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1135)
Caused by java.lang.NullPointerException: Attempt to invoke interface method 'android.content.SharedPreferences$Editor android.content.SharedPreferences.edit()' on a null object reference
at us.zoom.libtools.storage.PreferenceUtil.saveBooleanValue(PreferenceUtil.java:3)
at us.zoom.libtools.utils.h.p(ZmDeviceUtils.java:24)
at us.zoom.libtools.utils.h.n(ZmDeviceUtils.java:7)
at us.zoom.uicommon.activity.ZMActivity.onCreate(ZMActivity.java:34)
at com.zipow.videobox.conference.ui.ZmBaseConfActivity.onCreate(ZmBaseConfActivity.java:1)
at com.zipow.videobox.ConfActivity.onCreate(ConfActivity.java:1)
at com.zipow.videobox.d.onCreate(ConfAccessibilityActivity.java:1)
at com.zipow.videobox.ConfActivityNormal.onCreate(ConfActivityNormal.java:7)
at us.zoom.sdk.MeetingActivity.onCreate(MeetingActivity.java:1)
at com.whova.bulletin_board.activities.ZoomMeetingActivity.onCreate(ZoomMeetingActivity.java:371)
at android.app.Activity.performCreate(Activity.java:8290)
at android.app.Activity.performCreate(Activity.java:8270)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1329)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:4009)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:4201)
at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:103)
at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135)
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2438)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loopOnce(Looper.java:226)
at android.os.Looper.loop(Looper.java:313)
at android.app.ActivityThread.main(ActivityThread.java:8669)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:571)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1135)
Fatal Exception: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.whova.event/com.zipow.videobox.conference.ui.ZmFoldableConfActivity}: java.lang.NullPointerException: Attempt to invoke interface method 'android.content.SharedPreferences$Editor android.content.SharedPreferences.edit()' on a null object reference
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3431)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3595)
at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:85)
at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135)
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2066)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loop(Looper.java:223)
at android.app.ActivityThread.main(ActivityThread.java:7664)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592)
Caused by java.lang.NullPointerException: Attempt to invoke interface method 'android.content.SharedPreferences$Editor android.content.SharedPreferences.edit()' on a null object reference
at us.zoom.libtools.storage.PreferenceUtil.saveBooleanValue(PreferenceUtil.java:3)
at us.zoom.libtools.utils.h.p(ZmDeviceUtils.java:24)
at us.zoom.libtools.utils.h.n(ZmDeviceUtils.java:7)
at us.zoom.uicommon.activity.ZMActivity.onCreate(ZMActivity.java:34)
at com.zipow.videobox.conference.ui.ZmBaseConfActivity.onCreate(ZmBaseConfActivity.java:1)
at com.zipow.videobox.conference.ui.ZmFoldableConfActivity.onCreate(ZmFoldableConfActivity.java:1)
at android.app.Activity.performCreate(Activity.java:7994)
at android.app.Activity.performCreate(Activity.java:7978)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1309)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3404)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3595)
at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:85)
at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135)
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2066)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loop(Looper.java:223)
at android.app.ActivityThread.main(ActivityThread.java:7664)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947)
Which Android Meeting SDK version?
5.11.3
To Reproduce
We have not been able to reproduce
Smartphone (please complete the following information):
It has happened on a lot of different device types and android versions. Below are a few:
Galaxy A02s (android 11)
Galaxy S21 5G (android 12)
Galaxy S10e (android 12)
Pixel 2 XL (android 11)
Pixel 3a (android 12)
Galaxy S20 FE 5G (android 12)
OnePlus6T (android 11)
Redmi Note 10 Pro Max (android 12)