Is there an existing issue for this?
Which plugins are affected?
Crashlytics
Which platforms are affected?
Android
Description
Hello Team,
Issue Description
We are experiencing a significant increase in application crash events following the Firebase SDK upgrade in our EE Flutter-based application.
We engaged the Google Support team regarding this issue, and they recommended upgrading the Crashlytics Gradle Plugin. Their response is attached for reference.
According to Google, Crashlytics Gradle Plugin 3.0.7 includes fixes related to native symbol and build ID processing. As an initial troubleshooting step, they advised us to update the following:
Crashlytics Gradle Plugin: 3.0.3 → 3.0.7
Firebase Android BoM: Upgrade to the latest compatible version
Reference: https://firebase.google.com/support/release-notes/android#crashlytics_gradle_plugin_v3-0-7
Could you please review and advise whether we can proceed with these updates to validate if they address the increased crash occurrences?
### Describe your environment:
Flutter Firebase SDK Versions (core/dependencies/pubspec.yaml)
firebase_core: 4.9.0
firebase_crashlytics: 5.2.2
Android (versions.gradle)
firebaseBomVersion = "34.12.0"
firebaseCrashlyticsPluginVersion = “3.0.3"
Fatal Exception: java.lang.OutOfMemoryError: Failed to allocate a 190158336 byte allocation with 3422925 free bytes and 124MB until OOM, target footprint 6845853, growth limit 134217728
at io.flutter.plugins.firebase.crashlytics.ElfBuildIdReader.readBuildIdFromZip(:94)
at io.flutter.plugins.firebase.crashlytics.ElfBuildIdReader.readBuildIdFromApk(:78)
at io.flutter.plugins.firebase.crashlytics.ElfBuildIdReader.readBuildId(:56)
at io.flutter.plugins.firebase.crashlytics.FlutterFirebaseCrashlyticsPlugin.onAttachedToEngine(:67)
at io.flutter.embedding.engine.FlutterEngineConnectionRegistry.add(:147)
at io.flutter.plugins.GeneratedPluginRegistrant.registerWith(:99)
at com.example.myee_app.MainActivity.configureFlutterEngine(:27)
at io.flutter.embedding.android.FlutterFragment.configureFlutterEngine(:1553)
at io.flutter.embedding.android.FlutterActivityAndFragmentDelegate.onAttach(:226)
at io.flutter.embedding.android.FlutterFragment.onAttach(:1060)
at androidx.fragment.app.Fragment.performAttach(:3075)
at androidx.fragment.app.FragmentStateManager.attach(:510)
at androidx.fragment.app.FragmentStateManager.moveToExpectedState(:279)
at androidx.fragment.app.FragmentManager.executeOpsTogether(:2214)
at androidx.fragment.app.FragmentManager.removeRedundantOperationsAndExecute(:2109)
at androidx.fragment.app.FragmentManager.execPendingActions(:2052)
at androidx.fragment.app.FragmentManager.dispatchStateChange(:3327)
at androidx.fragment.app.FragmentManager.dispatchActivityCreated(:3237)
at androidx.fragment.app.FragmentController.dispatchActivityCreated(:263)
at androidx.fragment.app.FragmentActivity.onStart(:350)
at android.app.Instrumentation.callActivityOnStart(Instrumentation.java:1702)
at android.app.Activity.performStart(Activity.java:9045)
at android.app.ActivityThread.handleStartActivity(ActivityThread.java:4074)
at android.app.servertransaction.TransactionExecutor.performLifecycleSequence(TransactionExecutor.java:270)
at android.app.servertransaction.TransactionExecutor.cycleToPath(TransactionExecutor.java:250)
at android.app.servertransaction.TransactionExecutor.executeLifecycleItem(TransactionExecutor.java:222)
at android.app.servertransaction.TransactionExecutor.executeTransactionItems(TransactionExecutor.java:107)
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:81)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2637)
at android.os.Handler.dispatchMessage(Handler.java:107)
at android.os.Looper.loopOnce(Looper.java:232)
at android.os.Looper.loop(Looper.java:317)
at android.app.ActivityThread.main(ActivityThread.java:8751)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:580)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:892)
Reproducing the issue
Please use above ENV configuration for your flutter based application.
Logs:
Fatal Exception: java.lang.OutOfMemoryError: Failed to allocate a 190158336 byte allocation with 3422925 free bytes and 124MB until OOM, target footprint 6845853, growth limit 134217728
at io.flutter.plugins.firebase.crashlytics.ElfBuildIdReader.readBuildIdFromZip(:94)
at io.flutter.plugins.firebase.crashlytics.ElfBuildIdReader.readBuildIdFromApk(:78)
at io.flutter.plugins.firebase.crashlytics.ElfBuildIdReader.readBuildId(:56)
at io.flutter.plugins.firebase.crashlytics.FlutterFirebaseCrashlyticsPlugin.onAttachedToEngine(:67)
at io.flutter.embedding.engine.FlutterEngineConnectionRegistry.add(:147)
at io.flutter.plugins.GeneratedPluginRegistrant.registerWith(:99)
at com.example.myee_app.MainActivity.configureFlutterEngine(:27)
at io.flutter.embedding.android.FlutterFragment.configureFlutterEngine(:1553)
at io.flutter.embedding.android.FlutterActivityAndFragmentDelegate.onAttach(:226)
at io.flutter.embedding.android.FlutterFragment.onAttach(:1060)
at androidx.fragment.app.Fragment.performAttach(:3075)
at androidx.fragment.app.FragmentStateManager.attach(:510)
at androidx.fragment.app.FragmentStateManager.moveToExpectedState(:279)
at androidx.fragment.app.FragmentManager.executeOpsTogether(:2214)
at androidx.fragment.app.FragmentManager.removeRedundantOperationsAndExecute(:2109)
at androidx.fragment.app.FragmentManager.execPendingActions(:2052)
at androidx.fragment.app.FragmentManager.dispatchStateChange(:3327)
at androidx.fragment.app.FragmentManager.dispatchActivityCreated(:3237)
at androidx.fragment.app.FragmentController.dispatchActivityCreated(:263)
at androidx.fragment.app.FragmentActivity.onStart(:350)
at android.app.Instrumentation.callActivityOnStart(Instrumentation.java:1702)
at android.app.Activity.performStart(Activity.java:9045)
at android.app.ActivityThread.handleStartActivity(ActivityThread.java:4074)
at android.app.servertransaction.TransactionExecutor.performLifecycleSequence(TransactionExecutor.java:270)
at android.app.servertransaction.TransactionExecutor.cycleToPath(TransactionExecutor.java:250)
at android.app.servertransaction.TransactionExecutor.executeLifecycleItem(TransactionExecutor.java:222)
at android.app.servertransaction.TransactionExecutor.executeTransactionItems(TransactionExecutor.java:107)
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:81)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2637)
at android.os.Handler.dispatchMessage(Handler.java:107)
at android.os.Looper.loopOnce(Looper.java:232)
at android.os.Looper.loop(Looper.java:317)
at android.app.ActivityThread.main(ActivityThread.java:8751)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:580)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:892)
Firebase Core version
4.9.0
Flutter Version
3.38.6
Relevant Log Output
Fatal Exception: java.lang.OutOfMemoryError: Failed to allocate a 190158336 byte allocation with 3422925 free bytes and 124MB until OOM, target footprint 6845853, growth limit 134217728
at io.flutter.plugins.firebase.crashlytics.ElfBuildIdReader.readBuildIdFromZip(:94)
at io.flutter.plugins.firebase.crashlytics.ElfBuildIdReader.readBuildIdFromApk(:78)
at io.flutter.plugins.firebase.crashlytics.ElfBuildIdReader.readBuildId(:56)
at io.flutter.plugins.firebase.crashlytics.FlutterFirebaseCrashlyticsPlugin.onAttachedToEngine(:67)
at io.flutter.embedding.engine.FlutterEngineConnectionRegistry.add(:147)
at io.flutter.plugins.GeneratedPluginRegistrant.registerWith(:99)
at com.example.myee_app.MainActivity.configureFlutterEngine(:27)
at io.flutter.embedding.android.FlutterFragment.configureFlutterEngine(:1553)
at io.flutter.embedding.android.FlutterActivityAndFragmentDelegate.onAttach(:226)
at io.flutter.embedding.android.FlutterFragment.onAttach(:1060)
at androidx.fragment.app.Fragment.performAttach(:3075)
at androidx.fragment.app.FragmentStateManager.attach(:510)
at androidx.fragment.app.FragmentStateManager.moveToExpectedState(:279)
at androidx.fragment.app.FragmentManager.executeOpsTogether(:2214)
at androidx.fragment.app.FragmentManager.removeRedundantOperationsAndExecute(:2109)
at androidx.fragment.app.FragmentManager.execPendingActions(:2052)
at androidx.fragment.app.FragmentManager.dispatchStateChange(:3327)
at androidx.fragment.app.FragmentManager.dispatchActivityCreated(:3237)
at androidx.fragment.app.FragmentController.dispatchActivityCreated(:263)
at androidx.fragment.app.FragmentActivity.onStart(:350)
at android.app.Instrumentation.callActivityOnStart(Instrumentation.java:1702)
at android.app.Activity.performStart(Activity.java:9045)
at android.app.ActivityThread.handleStartActivity(ActivityThread.java:4074)
at android.app.servertransaction.TransactionExecutor.performLifecycleSequence(TransactionExecutor.java:270)
at android.app.servertransaction.TransactionExecutor.cycleToPath(TransactionExecutor.java:250)
at android.app.servertransaction.TransactionExecutor.executeLifecycleItem(TransactionExecutor.java:222)
at android.app.servertransaction.TransactionExecutor.executeTransactionItems(TransactionExecutor.java:107)
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:81)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2637)
at android.os.Handler.dispatchMessage(Handler.java:107)
at android.os.Looper.loopOnce(Looper.java:232)
at android.os.Looper.loop(Looper.java:317)
at android.app.ActivityThread.main(ActivityThread.java:8751)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:580)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:892)
Flutter dependencies
Expand Flutter dependencies snippet
dependencies:
firebase_core: 4.9.0
firebase_crashlytics: 5.2.2
firebase_analytics: 12.4.1
firebase_performance: 0.11.4+1
firebase_remote_config: 6.5.1
firebase_app_installations: 0.4.2+2
dependency_overrides:
firebase_messaging: 16.2.2
firebase_core_platform_interface: 7.0.1
Additional context and comments
No response
Is there an existing issue for this?
Which plugins are affected?
Crashlytics
Which platforms are affected?
Android
Description
Hello Team,
Issue Description
We are experiencing a significant increase in application crash events following the Firebase SDK upgrade in our EE Flutter-based application.
We engaged the Google Support team regarding this issue, and they recommended upgrading the Crashlytics Gradle Plugin. Their response is attached for reference.
According to Google, Crashlytics Gradle Plugin 3.0.7 includes fixes related to native symbol and build ID processing. As an initial troubleshooting step, they advised us to update the following:
Crashlytics Gradle Plugin: 3.0.3 → 3.0.7
Firebase Android BoM: Upgrade to the latest compatible version
Reference: https://firebase.google.com/support/release-notes/android#crashlytics_gradle_plugin_v3-0-7
Could you please review and advise whether we can proceed with these updates to validate if they address the increased crash occurrences?
### Describe your environment:
Flutter Firebase SDK Versions (core/dependencies/pubspec.yaml)
Android (versions.gradle)
Reproducing the issue
Please use above ENV configuration for your flutter based application.
Logs:
Firebase Core version
4.9.0
Flutter Version
3.38.6
Relevant Log Output
Flutter dependencies
Expand
Flutter dependenciessnippetAdditional context and comments
No response