-
Notifications
You must be signed in to change notification settings - Fork 1.1k
Labels
Description
Capacitor Version
💊 Capacitor Doctor 💊
Latest Dependencies:
@capacitor/cli: 7.4.3
@capacitor/core: 7.4.3
@capacitor/android: 7.4.3
@capacitor/ios: 7.4.3
Installed Dependencies:
@capacitor/cli: 7.4.3
@capacitor/core: 7.4.3
@capacitor/android: 7.4.3
@capacitor/ios: 7.4.3
[success] iOS looking great! 👌
[success] Android looking great! 👌
Other API Details
Platforms Affected
- iOS
- Android
- Web
Current Behavior
We are seeing NPEs in BridgeActivity.onSaveInstancState in Crashlytics:
Fatal Exception: java.lang.NullPointerException: Attempt to invoke virtual method 'void com.getcapacitor.Bridge.saveInstanceState(android.os.Bundle)' on a null object reference
at com.getcapacitor.BridgeActivity.onSaveInstanceState(BridgeActivity.java:69)
at android.app.Activity.performSaveInstanceState(Activity.java:2482)
at android.app.Instrumentation.callActivityOnSaveInstanceState(Instrumentation.java:1749)
at android.app.ActivityThread.callActivityOnSaveInstanceState(ActivityThread.java:6626)
at android.app.ActivityThread.callActivityOnStop(ActivityThread.java:6034)
at android.app.ActivityThread.performStopActivityInner(ActivityThread.java:6000)
at android.app.ActivityThread.handleStopActivity(ActivityThread.java:6064)
at android.app.servertransaction.StopActivityItem.execute(StopActivityItem.java:43)
at android.app.servertransaction.ActivityTransactionItem.execute(ActivityTransactionItem.java:63)
at android.app.servertransaction.TransactionExecutor.executeLifecycleItem(TransactionExecutor.java:169)
at android.app.servertransaction.TransactionExecutor.executeTransactionItems(TransactionExecutor.java:101)
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:80)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2823)
at android.os.Handler.dispatchMessage(Handler.java:110)
at android.os.Looper.loopOnce(Looper.java:248)
at android.os.Looper.loop(Looper.java:338)
at android.app.ActivityThread.main(ActivityThread.java:9067)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:593)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:932)
Expected Behavior
No NPEs happen in BridgeActivity.
Project Reproduction
We cannot reproduce this. Only shows up in Crashlytics.
Additional Information
It seems that the bridge field is null for some reason. Almost all methods in BridgeActivity are currently guarded against this with null checks. The exceptions are:
onDetachedFromWindowonRestartonSaveInstanceState
Would it make sense to add the same if (bridge != null) {} conditions to these 3 methods as well?