firebase / flutterfire

πŸ”₯ A collection of Firebase plugins for Flutter apps.
https://firebase.google.com/docs/flutter/setup
BSD 3-Clause "New" or "Revised" License
8.73k stars 3.98k forks source link

πŸ› [cloud_firestore] Cloud firestore is causing ANR to be reported in crashlytics #8927

Open Turburlar opened 2 years ago

Turburlar commented 2 years ago

I am using firestore in my app, along with crashlytics.

I have received multiple crashlytics reports for ANRs happening with the following stacktrace...


main (runnable): tid=1 systid=11035 
#00 pc 0x35f155 libart.so 
#01 pc 0x4295e3 libart.so 
#02 pc 0x424fdf libart.so 
#03 pc 0x441db9 libart.so 
#04 pc 0x42a017 libart.so 
#05 pc 0x4a1545 libart.so 
       at libcore.util.CharsetUtils.toUtf8Bytes(CharsetUtils.java)
       at java.lang.String.getBytes(String.java:946)
       at io.flutter.plugin.common.StandardMessageCodec.decodeMessage(StandardMessageCodec.java)
       at io.flutter.plugins.firebase.firestore.FlutterFirebaseFirestoreMessageCodec.readValueOfType(FlutterFirebaseFirestoreMessageCodec.java)
       at io.flutter.plugin.common.StandardMessageCodec.decodeMessage(StandardMessageCodec.java)
       at io.flutter.plugins.firebase.firestore.FlutterFirebaseFirestoreMessageCodec.readValueOfType(FlutterFirebaseFirestoreMessageCodec.java)
       at io.flutter.plugin.common.StandardMessageCodec.decodeMessage(StandardMessageCodec.java)
       at io.flutter.plugins.firebase.firestore.FlutterFirebaseFirestoreMessageCodec.readValueOfType(FlutterFirebaseFirestoreMessageCodec.java)
       at io.flutter.plugin.common.StandardMessageCodec.decodeMessage(StandardMessageCodec.java)
       at io.flutter.plugins.firebase.firestore.FlutterFirebaseFirestoreMessageCodec.readValueOfType(FlutterFirebaseFirestoreMessageCodec.java)
       at io.flutter.plugin.common.StandardMessageCodec.decodeMessage(StandardMessageCodec.java)
       at io.flutter.plugins.firebase.firestore.FlutterFirebaseFirestoreMessageCodec.readValueOfType(FlutterFirebaseFirestoreMessageCodec.java)
       at io.flutter.plugins.firebase.firestore.FlutterFirebaseFirestoreMessageCodec.readValueOfType(FlutterFirebaseFirestoreMessageCodec.java)
       at io.flutter.plugins.firebase.firestore.FlutterFirebaseFirestoreMessageCodec.readValueOfType(FlutterFirebaseFirestoreMessageCodec.java)
       at io.flutter.plugin.common.StandardMethodCodec.decodeMethodCall(StandardMethodCodec.java)
       at io.flutter.plugin.common.EventChannel$IncomingStreamRequestHandler$EventSinkImplementation.endOfStream(EventChannel.java)
       at io.flutter.plugins.firebase.firestore.streamhandler.QuerySnapshotsStreamHandler.lambda$onListen$0(QuerySnapshotsStreamHandler.java)
       at io.flutter.plugins.firebase.firestore.streamhandler.-$$Lambda$QuerySnapshotsStreamHandler$PBSyexbKtSGEzTLM1Qp-n358g4w.onEvent(-.java)
       at com.google.firebase.firestore.Query.addSnapshotListener(Query.java)
       at com.google.firebase.firestore.-$$Lambda$Query$04zhQ1YVqnXkum33ae88_6QrEeU.onEvent(-.java)
       at com.google.firebase.firestore.core.AsyncEventListener.lambda$onEvent$0(AsyncEventListener.java)
       at com.google.firebase.firestore.core.-$$Lambda$AsyncEventListener$L-aBBnf1NlYVR-NiXrj-B_r6-Nk.run(-.java)
       at android.os.Handler.handleCallback(Handler.java:938)
       at android.os.Handler.dispatchMessage(Handler.java:99)
       at android.os.Looper.loop(Looper.java:246)
       at android.app.ActivityThread.main(ActivityThread.java:8550)
       at java.lang.reflect.Method.invoke(Method.java)
       at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:602)
       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1130)

My logs for this crash show no adverse behaviour at the application level.

darshankawar commented 2 years ago

@Turburlar Can you provide flutter doctor -v on which your app is built and running in production along with firestore plugin version ? Also, is there a way for your to provide a pattern or steps to replicate ?

Turburlar commented 2 years ago

Most importantly, I cannot reproduce this issue. This is based solely on my crashlytics reports coming from users devices. In crashlytics this issue is listed as an ANR.

My firestore version is...

cloud_firestore: ^3.1.11 firebase_core: ^1.14.0

Flutter doctor -v

[βœ“] Flutter (Channel stable, 3.0.1, on macOS 12.4 21F79 darwin-arm, locale en-CA)
    β€’ Flutter version 3.0.1 at /Users/myuser/.flutter_sdk
    β€’ Upstream repository https://github.com/flutter/flutter.git
    β€’ Framework revision fb57da5f94 (6 weeks ago), 2022-05-19 15:50:29 -0700
    β€’ Engine revision caaafc5604
    β€’ Dart version 2.17.1
    β€’ DevTools version 2.12.2

[!] Android toolchain - develop for Android devices (Android SDK version 30.0.3)
    β€’ Android SDK at /Users/myuser/.android_sdk/
    β€’ Platform android-31, build-tools 30.0.3
    β€’ ANDROID_HOME = /Users/myuser/.android_sdk/
    β€’ Java binary at: /Library/Java/JavaVirtualMachines/jdk-18.0.1.1.jdk/Contents/Home/bin/java
    β€’ Java version Java(TM) SE Runtime Environment (build 18.0.1.1+2-6)
    βœ— Android license status unknown.
      Run `flutter doctor --android-licenses` to accept the SDK licenses.
      See https://flutter.dev/docs/get-started/install/macos#android-setup for more details.

[βœ“] Xcode - develop for iOS and macOS (Xcode 13.2.1)
    β€’ Xcode at /Applications/Xcode.app/Contents/Developer
    β€’ CocoaPods version 1.11.3

[βœ“] Chrome - develop for the web
    β€’ Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[!] Android Studio (not installed)
    β€’ Android Studio not found; download from https://developer.android.com/studio/index.html
      (or visit https://flutter.dev/docs/get-started/install/macos#android-setup for detailed instructions).

[βœ“] VS Code (version 1.68.1)
    β€’ VS Code at /Applications/Visual Studio Code.app/Contents
    β€’ Flutter extension version 3.42.0

[βœ“] Connected device (2 available)
    β€’ macOS (desktop) β€’ macos  β€’ darwin-arm64   β€’ macOS 12.4 21F79 darwin-arm
    β€’ Chrome (web)    β€’ chrome β€’ web-javascript β€’ Google Chrome 103.0.5060.53

[βœ“] HTTP Host Availability
    β€’ All required HTTP hosts are available
Turburlar commented 2 years ago

Updated info....this seems to be only occurring on Samsung A11 and A21.

darshankawar commented 2 years ago

Thanks for the update. Keeping it open and labeling for further insights from the team, as there's no concrete steps to replicate and code sample, as the issue seems to be occuring in a live app.

/cc @russellwheatley

Wackymax commented 1 year ago

I am also getting these issues from time to time. I am seeing it on a wider range of devices than the OP. Also can't reproduce but only have Crashlytics reports from a live environment. I will include some of the stack traces here. Given the variety of places where it is throwing the ANR I am not sure if this is related to Firestore or if it might be another plugin causing the issues, but these reports have mostly started coming in after the updating to the latest plugin versions. Any ideas on what I can try will be welcome.

Here are some stack traces:

main (runnable):tid=1 systid=18467 
       at java.util.HashMap.resize(HashMap.java:706)
       at java.util.HashMap.putVal(HashMap.java:662)
       at java.util.HashMap.put(HashMap.java:611)
       at com.google.firebase.firestore.UserDataWriter.convertObject(UserDataWriter.java:41)
       at com.google.firebase.firestore.DocumentSnapshot.getData(DocumentSnapshot.java:26)
       at com.google.firebase.firestore.QueryDocumentSnapshot.getData(QueryDocumentSnapshot.java:5)
       at io.flutter.plugins.firebase.firestore.FlutterFirebaseFirestoreMessageCodec.writeQuerySnapshot(FlutterFirebaseFirestoreMessageCodec.java:69)
       at io.flutter.plugins.firebase.firestore.FlutterFirebaseFirestoreMessageCodec.writeValue(FlutterFirebaseFirestoreMessageCodec.java:131)
       at io.flutter.plugin.common.StandardMethodCodec.encodeSuccessEnvelope(StandardMethodCodec.java:11)
       at io.flutter.plugin.common.EventChannel$IncomingStreamRequestHandler$EventSinkImplementation.success(EventChannel.java:45)
       at io.flutter.plugins.firebase.firestore.streamhandler.QuerySnapshotsStreamHandler.lambda$onListen$0(QuerySnapshotsStreamHandler.java:38)
       at com.google.firebase.firestore.Query.lambda$addSnapshotListenerInternal$2(Query.java:27)
       at com.google.firebase.firestore.core.AsyncEventListener.lambda$onEvent$0(AsyncEventListener.java:6)
       at android.os.Handler.handleCallback(Handler.java:942)
       at android.os.Handler.dispatchMessage(Handler.java:99)
       at android.os.Looper.loopOnce(Looper.java:226)
       at android.os.Looper.loop(Looper.java:313)
       at android.app.ActivityThread.main(ActivityThread.java:8757)
       at java.lang.reflect.Method.invoke(Native method)
       at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:571)
       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1067)
main (runnable):tid=1 systid=7208 
       at java.util.LinkedHashMap.afterNodeInsertion(LinkedHashMap.java:323)
       at java.util.HashMap.putVal(HashMap.java:663)
       at java.util.HashMap.putMapEntries(HashMap.java:514)
       at java.util.HashMap.putAll(HashMap.java:784)
       at com.google.protobuf.MapFieldLite.putAll(MapFieldLite.java:6)
       at com.google.protobuf.MapFieldLite.mergeFrom(MapFieldLite.java:9)
       at com.google.protobuf.MapFieldSchemaLite.mergeFromLite(MapFieldSchemaLite.java:20)
       at com.google.protobuf.MapFieldSchemaLite.mergeFrom(MapFieldSchemaLite.java)
       at com.google.protobuf.SchemaUtil.mergeMap(SchemaUtil.java:8)
       at com.google.protobuf.MessageSchema.mergeSingleField(MessageSchema.java:53)
       at com.google.protobuf.MessageSchema.mergeFrom(MessageSchema.java:12)
       at com.google.protobuf.GeneratedMessageLite$Builder.mergeFromInstance(GeneratedMessageLite.java:8)
       at com.google.protobuf.GeneratedMessageLite$Builder.mergeFrom(GeneratedMessageLite.java:16)
       at com.google.protobuf.GeneratedMessageLite.toBuilder(GeneratedMessageLite.java:8)
       at com.google.firebase.firestore.model.ObjectValue.applyOverlay(ObjectValue.java:16)
       at com.google.firebase.firestore.model.ObjectValue.buildProto(ObjectValue.java:7)
       at com.google.firebase.firestore.model.ObjectValue.hashCode(ObjectValue.java)
       at com.google.firebase.firestore.model.DocumentSet.hashCode(DocumentSet.java:34)
       at com.google.firebase.firestore.core.ViewSnapshot.hashCode(ViewSnapshot.java:10)
       at com.google.firebase.firestore.QuerySnapshot.hashCode(QuerySnapshot.java:19)
       at io.flutter.plugins.firebase.firestore.FlutterFirebaseFirestoreMessageCodec.writeQuerySnapshot(FlutterFirebaseFirestoreMessageCodec.java:22)
       at io.flutter.plugins.firebase.firestore.FlutterFirebaseFirestoreMessageCodec.writeValue(FlutterFirebaseFirestoreMessageCodec.java:131)
       at io.flutter.plugin.common.StandardMethodCodec.encodeSuccessEnvelope(StandardMethodCodec.java:11)
       at io.flutter.plugin.common.EventChannel$IncomingStreamRequestHandler$EventSinkImplementation.success(EventChannel.java:45)
       at io.flutter.plugins.firebase.firestore.streamhandler.QuerySnapshotsStreamHandler.lambda$onListen$0(QuerySnapshotsStreamHandler.java:38)
       at com.google.firebase.firestore.Query.lambda$addSnapshotListenerInternal$2(Query.java:27)
       at com.google.firebase.firestore.core.AsyncEventListener.lambda$onEvent$0(AsyncEventListener.java:6)
       at android.os.Handler.handleCallback(Handler.java:942)
       at android.os.Handler.dispatchMessage(Handler.java:99)
       at android.os.Looper.loopOnce(Looper.java:226)
       at android.os.Looper.loop(Looper.java:313)
       at android.app.ActivityThread.main(ActivityThread.java:8757)
       at java.lang.reflect.Method.invoke(Native method)
       at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:571)
       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1067)
main (runnable):tid=1 systid=14620 
       at java.util.HashMap.hash(HashMap.java:338)
       at java.util.LinkedHashMap.get(LinkedHashMap.java:464)
       at com.google.protobuf.MapFieldLite.checkForNullKeysAndValues(MapFieldLite.java:21)
       at com.google.protobuf.MapFieldLite.putAll(MapFieldLite.java:3)
       at com.google.protobuf.MapFieldLite.mergeFrom(MapFieldLite.java:9)
       at com.google.protobuf.MapFieldSchemaLite.mergeFromLite(MapFieldSchemaLite.java:20)
       at com.google.protobuf.MapFieldSchemaLite.mergeFrom(MapFieldSchemaLite.java)
       at com.google.protobuf.SchemaUtil.mergeMap(SchemaUtil.java:8)
       at com.google.protobuf.MessageSchema.mergeSingleField(MessageSchema.java:53)
       at com.google.protobuf.MessageSchema.mergeFrom(MessageSchema.java:12)
       at com.google.protobuf.GeneratedMessageLite$Builder.mergeFromInstance(GeneratedMessageLite.java:8)
       at com.google.protobuf.GeneratedMessageLite$Builder.mergeFrom(GeneratedMessageLite.java:16)
       at com.google.protobuf.GeneratedMessageLite.toBuilder(GeneratedMessageLite.java:8)
       at com.google.firebase.firestore.model.ObjectValue.applyOverlay(ObjectValue.java:16)
       at com.google.firebase.firestore.model.ObjectValue.buildProto(ObjectValue.java:7)
       at com.google.firebase.firestore.model.ObjectValue.get(ObjectValue.java)
       at com.google.firebase.firestore.model.MutableDocument.getField(MutableDocument.java:4)
       at com.google.firebase.firestore.core.OrderBy.compare(OrderBy.java:38)
       at com.google.firebase.firestore.core.Query$QueryComparator.compare(Query.java:18)
       at com.google.firebase.firestore.core.Query$QueryComparator.compare(Query.java:4)
       at com.google.firebase.firestore.model.DocumentSet.lambda$emptySet$0(DocumentSet.java)
       at com.google.firebase.database.collection.ArraySortedMap.findKey(ArraySortedMap.java:11)
       at com.google.firebase.database.collection.ArraySortedMap.indexOf(ArraySortedMap.java)
       at com.google.firebase.database.collection.ImmutableSortedSet.indexOf(ImmutableSortedSet.java:2)
       at com.google.firebase.firestore.model.DocumentSet.indexOf(DocumentSet.java:14)
       at com.google.firebase.firestore.DocumentChange.changesFromSnapshot(DocumentChange.java:235)
       at com.google.firebase.firestore.QuerySnapshot.getDocumentChanges(QuerySnapshot.java:37)
       at com.google.firebase.firestore.QuerySnapshot.getDocumentChanges(QuerySnapshot.java:2)
       at io.flutter.plugins.firebase.firestore.FlutterFirebaseFirestoreMessageCodec.writeQuerySnapshot(FlutterFirebaseFirestoreMessageCodec.java:106)
       at io.flutter.plugins.firebase.firestore.FlutterFirebaseFirestoreMessageCodec.writeValue(FlutterFirebaseFirestoreMessageCodec.java:131)
       at io.flutter.plugin.common.StandardMethodCodec.encodeSuccessEnvelope(StandardMethodCodec.java:11)
       at io.flutter.plugin.common.EventChannel$IncomingStreamRequestHandler$EventSinkImplementation.success(EventChannel.java:45)
       at io.flutter.plugins.firebase.firestore.streamhandler.QuerySnapshotsStreamHandler.lambda$onListen$0(QuerySnapshotsStreamHandler.java:38)
       at com.google.firebase.firestore.Query.lambda$addSnapshotListenerInternal$2(Query.java:27)
       at com.google.firebase.firestore.core.AsyncEventListener.lambda$onEvent$0(AsyncEventListener.java:6)
       at android.os.Handler.handleCallback(Handler.java:942)
       at android.os.Handler.dispatchMessage(Handler.java:99)
       at android.os.Looper.loopOnce(Looper.java:226)
       at android.os.Looper.loop(Looper.java:313)
       at android.app.ActivityThread.main(ActivityThread.java:8757)
       at java.lang.reflect.Method.invoke(Native method)
       at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:571)
       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1067)
main (runnable):tid=1 systid=25394 
#00 pc 0x6aa9a8 libart.so (art::DumpNativeStack(std::__1::basic_ostream<char, std::__1::char_traits<char> >&, int, BacktraceMap*, char const*, art::ArtMethod*, void*, bool) + 128) (BuildId: 4bf4747707ca903605931dd6b3d0480c)
#01 pc 0x712b44 libart.so (art::Thread::DumpStack(std::__1::basic_ostream<char, std::__1::char_traits<char> >&, bool, BacktraceMap*, bool) const + 236) (BuildId: 4bf4747707ca903605931dd6b3d0480c)
#02 pc 0x721d90 libart.so (art::DumpCheckpoint::Run(art::Thread*) + 208) (BuildId: 4bf4747707ca903605931dd6b3d0480c)
#03 pc 0x424f94 libart.so (art::Thread::RunCheckpointFunction() + 140) (BuildId: 4bf4747707ca903605931dd6b3d0480c)
#04 pc 0x77f90c libart.so (artTestSuspendFromCode + 48) (BuildId: 4bf4747707ca903605931dd6b3d0480c)
#05 pc 0x46113c libart.so (art_quick_test_suspend + 156) (BuildId: 4bf4747707ca903605931dd6b3d0480c)
       at libcore.util.CharsetUtils.toUtf8Bytes(Native method)
       at java.lang.String.getBytes(String.java:1153)
       at io.flutter.plugin.common.StandardMessageCodec.writeValue(StandardMessageCodec.java:180)
       at io.flutter.plugins.firebase.firestore.FlutterFirebaseFirestoreMessageCodec.writeValue(FlutterFirebaseFirestoreMessageCodec.java:238)
       at io.flutter.plugin.common.StandardMessageCodec.writeValue(StandardMessageCodec.java:368)
       at io.flutter.plugins.firebase.firestore.FlutterFirebaseFirestoreMessageCodec.writeValue(FlutterFirebaseFirestoreMessageCodec.java:238)
       at io.flutter.plugin.common.StandardMessageCodec.writeValue(StandardMessageCodec.java:322)
       at io.flutter.plugins.firebase.firestore.FlutterFirebaseFirestoreMessageCodec.writeValue(FlutterFirebaseFirestoreMessageCodec.java:238)
       at io.flutter.plugin.common.StandardMessageCodec.writeValue(StandardMessageCodec.java:375)
       at io.flutter.plugins.firebase.firestore.FlutterFirebaseFirestoreMessageCodec.writeValue(FlutterFirebaseFirestoreMessageCodec.java:238)
       at io.flutter.plugins.firebase.firestore.FlutterFirebaseFirestoreMessageCodec.writeQuerySnapshot(FlutterFirebaseFirestoreMessageCodec.java:135)
       at io.flutter.plugins.firebase.firestore.FlutterFirebaseFirestoreMessageCodec.writeValue(FlutterFirebaseFirestoreMessageCodec.java:131)
       at io.flutter.plugin.common.StandardMethodCodec.encodeSuccessEnvelope(StandardMethodCodec.java:11)
       at io.flutter.plugin.common.EventChannel$IncomingStreamRequestHandler$EventSinkImplementation.success(EventChannel.java:45)
       at io.flutter.plugins.firebase.firestore.streamhandler.QuerySnapshotsStreamHandler.lambda$onListen$0(QuerySnapshotsStreamHandler.java:38)
       at com.google.firebase.firestore.Query.lambda$addSnapshotListenerInternal$2(Query.java:27)
       at com.google.firebase.firestore.core.AsyncEventListener.lambda$onEvent$0(AsyncEventListener.java:6)
       at android.os.Handler.handleCallback(Handler.java:942)
       at android.os.Handler.dispatchMessage(Handler.java:99)
       at android.os.Looper.loopOnce(Looper.java:201)
       at android.os.Looper.loop(Looper.java:288)
       at android.app.ActivityThread.main(ActivityThread.java:7918)
       at java.lang.reflect.Method.invoke(Native method)
       at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:548)
       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:936)
main (runnable):tid=1 systid=25394 
#00 pc 0x6aa9a8 libart.so (art::DumpNativeStack(std::__1::basic_ostream<char, std::__1::char_traits<char> >&, int, BacktraceMap*, char const*, art::ArtMethod*, void*, bool) + 128) (BuildId: 4bf4747707ca903605931dd6b3d0480c)
#01 pc 0x712b44 libart.so (art::Thread::DumpStack(std::__1::basic_ostream<char, std::__1::char_traits<char> >&, bool, BacktraceMap*, bool) const + 236) (BuildId: 4bf4747707ca903605931dd6b3d0480c)
#02 pc 0x721d90 libart.so (art::DumpCheckpoint::Run(art::Thread*) + 208) (BuildId: 4bf4747707ca903605931dd6b3d0480c)
#03 pc 0x424f94 libart.so (art::Thread::RunCheckpointFunction() + 140) (BuildId: 4bf4747707ca903605931dd6b3d0480c)
#04 pc 0x77f90c libart.so (artTestSuspendFromCode + 48) (BuildId: 4bf4747707ca903605931dd6b3d0480c)
#05 pc 0x46113c libart.so (art_quick_test_suspend + 156) (BuildId: 4bf4747707ca903605931dd6b3d0480c)
       at libcore.util.CharsetUtils.toUtf8Bytes(Native method)
       at java.lang.String.getBytes(String.java:1153)
       at io.flutter.plugin.common.StandardMessageCodec.writeValue(StandardMessageCodec.java:180)
       at io.flutter.plugins.firebase.firestore.FlutterFirebaseFirestoreMessageCodec.writeValue(FlutterFirebaseFirestoreMessageCodec.java:238)
       at io.flutter.plugin.common.StandardMessageCodec.writeValue(StandardMessage

Flutter doctor

[βœ“] Flutter (Channel stable, 3.10.6, on macOS 13.4.1 22F770820d darwin-arm64, locale en-ZA)
    β€’ Flutter version 3.10.6 on channel stable at /Users/hennie/Tools/Flutter/flutter
    β€’ Upstream repository https://github.com/flutter/flutter.git
    β€’ Framework revision f468f3366c (5 weeks ago), 2023-07-12 15:19:05 -0700
    β€’ Engine revision cdbeda788a
    β€’ Dart version 3.0.6
    β€’ DevTools version 2.23.1

[βœ“] Android toolchain - develop for Android devices (Android SDK version 34.0.0)
    β€’ Android SDK at /Users/hennie/Library/Android/sdk
    β€’ Platform android-34, build-tools 34.0.0
    β€’ ANDROID_SDK_ROOT = /Users/hennie/Library/Android/sdk
    β€’ Java binary at: /Users/hennie/Applications/Android Studio.app/Contents/jbr/Contents/Home/bin/java
    β€’ Java version OpenJDK Runtime Environment (build 17.0.6+0-17.0.6b829.9-10027231)
    β€’ All Android licenses accepted.

[βœ“] Xcode - develop for iOS and macOS (Xcode 14.3.1)
    β€’ Xcode at /Applications/Xcode.app/Contents/Developer
    β€’ Build 14E300c
    β€’ CocoaPods version 1.11.3

[βœ“] Chrome - develop for the web
    β€’ Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[βœ“] Android Studio (version 2022.3)
    β€’ Android Studio at /Users/hennie/Applications/Android Studio.app/Contents
    β€’ Flutter plugin can be installed from:
      πŸ”¨ https://plugins.jetbrains.com/plugin/9212-flutter
    β€’ Dart plugin can be installed from:
      πŸ”¨ https://plugins.jetbrains.com/plugin/6351-dart
    β€’ Java version OpenJDK Runtime Environment (build 17.0.6+0-17.0.6b829.9-10027231)

[βœ“] IntelliJ IDEA Ultimate Edition (version 2023.2)
    β€’ IntelliJ at /Users/hennie/Applications/IntelliJ IDEA Ultimate.app
    β€’ Flutter plugin version 75.1.4
    β€’ Dart plugin version 232.8660.129

[βœ“] VS Code (version 1.75.0)
    β€’ VS Code at /Applications/Visual Studio Code.app/Contents
    β€’ Flutter extension version 3.58.0

[βœ“] Connected device (3 available)
    β€’ sdk gphone arm64 (mobile) β€’ emulator-5554 β€’ android-arm64  β€’ Android 11 (API 30) (emulator)
    β€’ macOS (desktop)           β€’ macos         β€’ darwin-arm64   β€’ macOS 13.4.1 22F770820d darwin-arm64
    β€’ Chrome (web)              β€’ chrome        β€’ web-javascript β€’ Google Chrome 115.0.5790.170

[βœ“] Network resources
    β€’ All expected network resources are available.

β€’ No issues found!

Dependencies

dependencies:
  flutter:
    sdk: flutter
  flutter_localizations:
    sdk: flutter
  intl_utils: ^2.8.4
  firebase_analytics: ^10.4.4
  firebase_auth: ^4.7.2
  firebase_crashlytics: ^3.3.4
  cloud_firestore: ^4.8.4
  firebase_storage: ^11.2.5
  firebase_messaging: ^14.6.5
  firebase_dynamic_links: ^5.3.4
  firebase_remote_config: ^4.2.4
  firebase_app_check: ^0.1.5+1
  cloud_functions: ^4.3.4
  json_annotation: ^4.8.1
  google_fonts: ^5.1.0
  get: ^4.6.5
  rxdart: ^0.27.7
  copy_with_extension: ^5.0.4
  sign_in_with_apple: ^5.0.0
  flutter_map: ^5.0.0
  wakelock: ^0.6.2
  shimmer: ^3.0.0
  shared_preferences: ^2.2.0
  path_provider: ^2.1.0
  url_launcher: ^6.1.12
  share_plus: ^7.1.0
  uuid: ^3.0.7
  time_machine: ^0.9.17
  fl_chart: ^0.63.0
  environment_sensors: ^0.3.0
  sensors_plus: ^3.0.3
  cupertino_icons: ^1.0.5
  latlong2: ^0.9.0
  units_converter: ^2.1.0
  connectivity_plus: ^4.0.2
  gpx: ^2.2.1
  archive: ^3.3.7
  file_picker: ^5.3.3
  nanoid: ^1.0.0
  sliding_up_panel: ^2.0.0+1
  flutter_compass: ^0.7.0
  device_info_plus: ^9.0.3
  package_info_plus: ^4.1.0
  money2: ^4.0.0
  in_app_purchase: ^3.1.8
  cached_network_image: ^3.2.3
  flutter_cache_manager: ^3.3.1
  permission_handler: ^10.4.3
  geolocator: ^9.0.2
  flutter_tts:  ^3.7.0
  webview_flutter: ^4.2.2
  audio_session: ^0.1.16
  flutter_signin_button: ^2.0.0
  provider: ^6.0.5
  faker_dart: ^0.2.1
  sliver_tools: ^0.2.12
  image_picker: ^1.0.2
  image_cropper: ^5.0.0
  palette_generator: ^0.3.3+2
  move_to_background: ^1.0.2
  flutter_colorpicker: ^1.0.3
  filesize: ^2.0.1
  geojson:
    git:
      url: https://github.com/Wackymax/geojson.git
      ref: 11235b101030f0dcd38cfa04be3169a707f072ff
  maps_toolkit: ^2.0.1
  image: ^4.0.17
  battery_plus: ^4.0.2
  lottie: ^2.6.0
  phone_state: ^1.0.3
  bluetooth_identifiers: ^1.1.1
  flutter_blue_plus: ^1.14.7
  nmea: ^3.2.0
  grouped_list: ^5.1.2
  carousel_slider: ^4.2.1
  flutter_background_service: ^5.0.1
  flutter_local_notifications: ^15.1.0+1
  facebook_app_events: ^0.19.0
  daylight: ^2.0.0
  optimize_battery: ^0.0.4
  firebase_ui_auth: ^1.6.2
  firebase_ui_oauth_google: ^1.2.7
  firebase_ui_oauth_apple: ^1.2.7
  firebase_ui_localizations: ^1.5.0
  styled_text: ^8.1.0
  advanced_in_app_review: ^1.1.3
  progress_border: ^0.1.2
  flutter_watch_os_connectivity: ^1.0.0
  protoc_plugin: ^21.0.2
  raw_sound:
    git:
      url: https://github.com/Wackymax/flutter_raw_sound.git
      ref: 269abbaec7d8ba6caf84b998f0fb77db6d841868
  udp: ^5.0.3
  flutter_beep: ^1.0.0
  animations: ^2.0.7
  responsive_layout_builder: ^0.5.0
  group_grid_view: ^1.0.1
  flutter_svg: ^2.0.7
  xml: ^6.3.0
  flutter_handle_file: 0.3.0-nullsafety.0
  material_floating_search_bar_2: ^0.5.0
  algolia_helper_flutter:
    git:
      url: https://github.com/Wackymax/algoliasearch-helper-flutter.git
      ref: 5fb5703d12865300547af33757e302bec2553207
      path: helper_flutter
  flutter_markdown: ^0.6.17+1
  flutter_chat_ui: ^1.6.9
  algolia_insights: ^0.1.2
  flutter_randomcolor: ^1.0.14
  easy_image_viewer: ^1.2.1
  algolia: ^1.1.2
  crypto: ^3.0.3
  prototype_constrained_box: ^1.0.0
  flutter_riverpod: ^2.3.6
  riverpod_annotation: ^2.1.1
  qr_flutter: ^4.1.0
  flutter_map_animations: ^0.4.1
  parallax_sensors_bg:
    git:
      url: https://github.com/Wackymax/parallax_sensors_bg.git
      ref: 46f03fc791e8c3244f6843683b5bc0842ede8542
  rainbow_color: ^2.0.1
  http: ^1.1.0
  fast_cached_network_image: ^1.2.0
russellwheatley commented 10 months ago

There isn't a way to stop ANR reports from appearing in Crashlytics as it stands. There is an open feature request for it on the firebase-android-sdk here: https://github.com/firebase/firebase-android-sdk/issues/4035