Flutter FirebaseDatabase run transaction crash
475
I was getting the same error while using flutter dev channel
.
Going to stable channel
fixed it for me. To check which channel you are do flutter channel
To switch to stable channel do:
flutter channel stable
flutter upgrade
Author by
Jorge Vieira
I made a little apps with android pure and then i meet flutter and liked it so much, i am currently migrating my apps to flutter so then i can publish to ios too.
Updated on December 11, 2022Comments
-
Jorge Vieira over 1 year
i'm trying run a transaction in the firebase database using Flutter and i am getting an error, can someone help me to solve this?
Code:
ref.runTransaction((MutableData transaction) async { transaction.value = (transaction.value ?? 0) + 1; return transaction; });
Error:
E/RepoOperation(16416): Caught Throwable. E/RepoOperation(16416): java.lang.RuntimeException: Methods marked with @UiThread must be executed on the main thread. Current thread: FirebaseDatabaseWorker E/RepoOperation(16416): at io.flutter.embedding.engine.FlutterJNI.ensureRunningOnMainThread(FlutterJNI.java:605) E/RepoOperation(16416): at io.flutter.embedding.engine.FlutterJNI.dispatchPlatformMessage(FlutterJNI.java:515) E/RepoOperation(16416): at io.flutter.embedding.engine.dart.DartMessenger.send(DartMessenger.java:76) E/RepoOperation(16416): at io.flutter.embedding.engine.dart.DartExecutor.send(DartExecutor.java:166) E/RepoOperation(16416): at io.flutter.view.FlutterNativeView.send(FlutterNativeView.java:155) E/RepoOperation(16416): at io.flutter.plugin.common.MethodChannel.invokeMethod(MethodChannel.java:98) E/RepoOperation(16416): at io.flutter.plugins.firebase.database.FirebaseDatabasePlugin$1.doTransaction(FirebaseDatabasePlugin.java:345) E/RepoOperation(16416): at com.google.firebase.database.core.Repo.startTransaction(com.google.firebase:firebase-database@@17.0.0:831) E/RepoOperation(16416): at com.google.firebase.database.DatabaseReference$4.run(com.google.firebase:firebase-database@@17.0.0:511) E/RepoOperation(16416): at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:458) E/RepoOperation(16416): at java.util.concurrent.FutureTask.run(FutureTask.java:266) E/RepoOperation(16416): at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:301) E/RepoOperation(16416): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167) E/RepoOperation(16416): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641) E/RepoOperation(16416): at java.lang.Thread.run(Thread.java:764)
Thanks in advance.
-
Jorge Vieira almost 5 yearsYou right, the version stable is working, it get crashed in some version after the version 1.5.8 i guess. Thank you.
-
Saifallak almost 5 yearsi added as issue for Flutter , follow it github.com/flutter/flutter/issues/33562
-
Eric Duffett almost 5 yearsAwesome!! Thanks!! Is the flutter upgrade command required? It resulted in some breaking changes in my pubspec.yaml file that I had to go in and fix.