-
Notifications
You must be signed in to change notification settings - Fork 1.1k
Open
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:
onDetachedFromWindow
onRestart
onSaveInstanceState
Would it make sense to add the same if (bridge != null) {}
conditions to these 3 methods as well?