image upload using http multipart. if image is null then getting error - flutter

on tap submit subbmit method call .
[1]: https://i.stack.imgur.com/glYah.png
error :
successful
E/flutter (11575): [ERROR:flutter/lib/ui/ui_dart_state.cc(199)] Unhandled Exception: NoSuchMethodError: The method 'readAsBytesSync' was called on null.
E/flutter (11575): Receiver: null
E/flutter (11575): Tried calling: readAsBytesSync()
E/flutter (11575): #0 Object.noSuchMethod (dart:core-patch/object_patch.dart:54:5)
E/flutter (11575): #1 _Delivery_DetailsState.submitForm (package:shop_me/src/screens/product_delivery/ui/delivery_detail.dart:500:37)
E/flutter (11575): #2 _Delivery_DetailsState.build. (package:shop_me/src/screens/product_delivery/ui/delivery_detail.dart:384:33)
E/flutter (11575): #3 _InkResponseState._handleTap (package:flutter/src/material/ink_well.dart:989:21)
E/flutter (11575): #4 GestureRecognizer.invokeCallback (package:flutter/src/gestures/recognizer.dart:182:24)
E/flutter (11575): #5 TapGestureRecognizer.handleTapUp (package:flutter/src/gestures/tap.dart:607:11)
E/flutter (11575): #6 BaseTapGestureRecognizer._checkUp (package:flutter/src/gestures/tap.dart:296:5)
E/flutter (11575): #7 BaseTapGestureRecognizer.acceptGesture (package:flutter/src/gestures/tap.dart:267:7)
E/flutter (11575): #8 GestureArenaManager.sweep (package:flutter/src/gestures/arena.dart:157:27)
E/flutter (11575): #9 GestureBinding.handleEvent (package:flutter/src/gestures/binding.dart:443:20)
E/flutter (11575): #10 GestureBinding.dispatchEvent (package:flutter/src/gestures/binding.dart:419:22)
E/flutter (11575): #11 RendererBinding.dispatchEvent (package:flutter/src/rendering/binding.dart:287:11)
E/flutter (11575): #12 GestureBinding._handlePointerEventImmediately (package:flutter/src/gestures/binding.dart:374:7)
E/flutter (11575): #13 GestureBinding.handlePointerEvent (package:flutter/src/gestures/binding.dart:338:5)
E/flutter (11575): #14 GestureBinding._flushPointerEventQueue (package:flutter/src/gestures/binding.dart:296:7)
E/flutter (11575): #15 GestureBinding._handlePointerDataPacket (package:flutter/src/gestures/binding.dart:279:7)
E/flutter (11575): #16 _rootRunUnary (dart:async/zone.dart:1370:13)
E/flutter (11575): #17 _CustomZone.runUnary (dart:async/zone.dart:1265:19)
E/flutter (11575): #18 _CustomZone.runUnaryGuarded (dart:async/zone.dart:1170:7)
E/flutter (11575): #19 _invoke1 (dart:ui/hooks.dart:182:10)
E/flutter (11575): #20 PlatformDispatcher._dispatchPointerDataPacket (dart:ui/platform_dispatcher.dart:282:7)
E/flutter (11575): #21 _dispatchPointerDataPacket (dart:ui/hooks.dart:96:31)
E/flutter (11575):

Related

flutter showing Unhandled Exception: FormatException: Filter error, bad data error

when I am trying to make an HTTP request in flutter I am receiving these errors on a particular API and I am unable to figure out what it means and how to resolve this error is it API is working properly in postman and browser
> E/flutter (15337): [ERROR:flutter/lib/ui/ui_dart_state.cc(199)] Unhandled Exception: FormatException: Filter error, bad data
E/flutter (15337): #0 _FilterImpl.processed (dart:io-patch/filter_patch.dart:11:32)
E/flutter (15337): #1 _FilterSink.addSlice (dart:io/data_transformer.dart:537:29)
E/flutter (15337): #2 _FilterSink.add (dart:io/data_transformer.dart:521:5)
E/flutter (15337): #3 _ConverterStreamEventSink.add (dart:convert/chunked_conversion.dart:72:18)
E/flutter (15337): #4 _SinkTransformerStreamSubscription._handleData (dart:async/stream_transformers.dart:111:24)
E/flutter (15337): #5 _rootRunUnary (dart:async/zone.dart:1362:47)
E/flutter (15337): #6 _CustomZone.runUnary (dart:async/zone.dart:1265:19)
E/flutter (15337): #7 _CustomZone.runUnaryGuarded (dart:async/zone.dart:1170:7)
E/flutter (15337): #8 CastStreamSubscription._onData (dart:_internal/async_cast.dart:85:11)
E/flutter (15337): #9 _rootRunUnary (dart:async/zone.dart:1362:47)
E/flutter (15337): #10 _CustomZone.runUnary (dart:async/zone.dart:1265:19)
E/flutter (15337): #11 _CustomZone.runUnaryGuarded (dart:async/zone.dart:1170:7)
E/flutter (15337): #12 _BufferingStreamSubscription._sendData (dart:async/stream_impl.dart:341:11)
E/flutter (15337): #13 _BufferingStreamSubscription._add (dart:async/stream_impl.dart:271:7)
E/flutter (15337): #14 _ForwardingStreamSubscription._add (dart:async/stream_pipe.dart:123:11)
E/flutter (15337): #15 _HandleErrorStream._handleData (dart:async/stream_pipe.dart:256:10)
E/flutter (15337): #16 _ForwardingStreamSubscription._handleData (dart:async/stream_pipe.dart:153:13)
E/flutter (15337): #17 _rootRunUnary (dart:async/zone.dart:1362:47)
E/flutter (15337): #18 _CustomZone.runUnary (dart:async/zone.dart:1265:19)
E/flutter (15337): #19 _CustomZone.runUnaryGuarded (dart:async/zone.dart:1170:7)
E/flutter (15337): #20 _BufferingStreamSubscription._sendData (dart:async/stream_impl.dart:341:11)
E/flutter (15337): #21 _DelayedData.perform (dart:async/stream_impl.dart:591:14)
E/flutter (15337): #22 _StreamImplEvents.handleNext (dart:async/stream_impl.dart:706:11)
E/flutter (15337): #23 _PendingEvents.schedule.<anonymous closure> (dart:async/stream_impl.dart:663:7)
E/flutter (15337): #24 _rootRun (dart:async/zone.dart:1346:47)
E/flutter (15337): #25 _CustomZone.run (dart:async/zone.dart:1258:19)
E/flutter (15337): #26 _CustomZone.runGuarded (dart:async/zone.dart:1162:7)
E/flutter (15337): #27 _CustomZone.bindCallbackGuarded.<anonymous closure> (dart:async/zone.dart:1202:23)
E/flutter (15337): #28 _rootRun (dart:async/zone.dart:1354:13)
E/flutter (15337): #29 _CustomZone.run (dart:async/zone.dart:1258:19)
E/flutter (15337): #30 _CustomZone.runGuarded (dart:async/zone.dart:1162:7)
E/flutter (15337): #31 _CustomZone.bindCallbackGuarded.<anonymous closure> (dart:async/zone.dart:1202:23)
E/flutter (15337): #32 _microtaskLoop (dart:async/schedule_microtask.dart:40:21)
E/flutter (15337): #33 _startMicrotaskLoop (dart:async/schedule_microtask.dart:49:5)
E/flutter (15337):
I have tried adding other API which is am using in my application and code is working properly but for it is giving above exception and stops after HTTP call.
Future<Null> getNewHomeData() async {
setState(() {
loading = true;
});
final response = await http.get(Uri.parse(Uri.encodeFull(APIs.url_HomePage)));
print(response.statusCode);
print(response.body);
try {
print(response.body);
if(response.statusCode == 200){
final home = homeNewFromJson(response.body);
homeBanner = home.advImg;
homeContent = home.infoText;
shopCat = home.shopCat;
storeImg = home.storeImg;
topSellings = home.topSellings;
modularFurniture = home.modularFurniture;
decorFurniture = home.decorFurniture;
banner1 = home.banner1;
banner2 = home.banner2;
banner3 = home.banner3;
banner4 = home.banner4;
banner5 = home.banner5;
}
} on Exception catch (e) {
print(e);
}

type '() => Future<List<Food>>' is not a subtype of type <List<Food>

I am new to flutter. when I run my code , I got the error
E/flutter (16181): [ERROR:flutter/lib/ui/ui_dart_state.cc(157)] Unhandled Exception: Unhandled error type '() => Future<List<Food>>' is not a subtype of type 'List<Food>' occurred in Instance of 'MenuBloc'.
E/flutter (16181): #0 MenuBloc.mapEventToState (package:restuarant_app/Bloc/menue_bloc/menu_bloc.dart:30:7)
E/flutter (16181): <asynchronous suspension>
E/flutter (16181): #1 Bloc._bindEventsToStates.<anonymous closure> (package:bloc/src/bloc.dart:232:20)
E/flutter (16181): #2 Stream.asyncExpand.onListen.<anonymous closure> (dart:async/stream.dart:579:30)
E/flutter (16181): #3 _rootRunUnary (dart:async/zone.dart:1192:38)
E/flutter (16181): #4 _CustomZone.runUnary (dart:async/zone.dart:1085:19)
E/flutter (16181): #5 _CustomZone.runUnaryGuarded (dart:async/zone.dart:987:7)
E/flutter (16181): #6 _BufferingStreamSubscription._sendData (dart:async/stream_impl.dart:339:11)
E/flutter (16181): #7 _DelayedData.perform (dart:async/stream_impl.dart:594:14)
E/flutter (16181): #8 _StreamImplEvents.handleNext (dart:async/stream_impl.dart:710:11)
E/flutter (16181): #9 _PendingEvents.schedule.<anonymous closure> (dart:async/stream_impl.dart:670:7)
E/flutter (16181): #10 _rootRun (dart:async/zone.dart:1180:38)
E/flutter (16181): #11 _CustomZone.run (dart:async/zone.dart:1077:19)
E/flutter (16181): #12 _CustomZone.runGuarded (dart:async/zone.dart:979:7)
E/flutter (16181): #13 _CustomZone.bindCallbackGuarded.<anonymous closure> (dart:async/zone.dart:1019:23)
E/flutter (16181): #14 _rootRun (dart:async/zone.dart:1184:13)
E/flutter (16181): #15 _CustomZone.run (dart:async/zone.dart:1077:19)
E/flutter (16181): #16 _CustomZone.runGuarded (dart:async/zone.dart:979:7)
E/flutter (16181): #17 _CustomZone.bindCallbackGuarded.<anonymous closure> (dart:async/zone.dart:1019:23)
E/flutter (16181): #18 _microtaskLoop (dart:async/schedule_microtask.dart:43:21)
E/flutter (16181): #19 _startMicrotaskLoop (dart:async/schedule_microtask.dart:52:5)
E/flutter (16181):
E/flutter (16181): #0 Cubit.onError.<anonymous closure> (package:bloc/src/cubit.dart:140:7)
E/flutter (16181): #1 Cubit.onError (package:bloc/src/cubit.dart:141:6)
E/flutter (16181): #2 Bloc.onError (package:bloc/src/bloc.dart:113:11)
E/flutter (16181): #3 _rootRunBinary (dart:async/zone.dart:1204:38)
E/flutter (16181): #4 _CustomZone.runBinary (dart:async/zone.dart:1093:19)
E/flutter (16181): #5 _CustomZone.runBinaryGuarded (dart:async/zone.dart:995:7)
E/flutter (16181): #6 _BufferingStreamSubscription._sendError.sendError (dart:async/stream_impl.dart:358:15)
E/flutter (16181): #7 _BufferingStreamSubscription._sendError (dart:async/stream_impl.dart:376:16)
E/flutter (16181): #8 _BufferingStreamSubscription._addError (dart:async/stream_impl.dart:275:7)
E/flutter (16181): #9 _SyncBroadcastStreamController._sendError.<anonymous closure> (dart:async/broadcast_stream_controller.dart:393:20)
E/flutter (16181): #10 _BroadcastStreamController._forEachListener (dart:async/broadcast_stream_controller.dart:327:15)
E/flutter (16181): #11 _SyncBroadcastStreamController._sendError (dart:async/broadcast_stream_controller.dart:392:5)
E/flutter (16181): #12 _BroadcastStreamController._addError (dart:async/broadcast_stream_controller.dart:294:5)
E/flutter (16181): #13 _rootRunBinary (dart:async/zone.dart:1204:38)
E/flutter (16181): #14 _CustomZone.runBinary (dart:async/zone.dart:1093:19)
E/flutter (16181): #15 _CustomZone.runBinaryGuarded (dart:async/zone.dart:995:7)
E/flutter (16181): #16 _BufferingStreamSubscription._sendError.sendError (dart:async/stream_impl.dart:358:15)
E/flutter (16181): #17 _BufferingStreamSubscription._sendError (dart:async/stream_impl.dart:376:16)
E/flutter (16181): #18 _BufferingStreamSubscription._addError (dart:async/stream_impl.dart:275:7)
E/flutter (16181): #19 _ForwardingStreamSubscription._addError (dart:async/stream_pipe.dart:139:11)
E/flutter (16181): #20 _ForwardingStream._handleError (dart:async/stream_pipe.dart:104:10)
E/flutter (16181): #21 _ForwardingStreamSubscription._handleError (dart:async/stream_pipe.dart:170:13)
E/flutter (16181): #22 _rootRunBinary (dart:async/zone.dart:1204:38)
E/flutter (16181): #23 _CustomZone.runBinary (dart:async/zone.dart:1093:19)
E/flutter (16181): #24 _CustomZone.runBinaryGuarded (dart:async/zone.dart:995:7)
E/flutter (16181): #25 _BufferingStreamSubscription._sendError.sendError (dart:async/stream_impl.dart:358:15)
E/flutter (16181): #26 _BufferingStreamSubscription._sendError (dart:async/stream_impl.dart:376:16)
E/flutter (16181): #27 _DelayedError.perform (dart:async/stream_impl.dart:605:14)
E/flutter (16181): #28 _StreamImplEvents.handleNext (dart:async/stream_impl.dart:710:11)
E/flutter (16181): #29 _PendingEvents.schedule.<anonymous closure> (dart:async/stream_impl.dart:670:7)
E/flutter (16181): #30 _rootRun (dart:async/zone.dart:1180:38)
E/flutter (16181): #31 _C
I would like to get data from remote server.I use bloc library in my code.
This is part of menue_bloc.dart .I got error on line allFood= await _foodRepositiry.getAllFood() ;.
class MenuBloc extends Bloc<FoodEvent, MenuState> {
final _foodRepositiry = FoodRepository();
Map<String, List<Food>> mapFoodList;
MenuBloc({this.mapFoodList=const{}}) : super(InitialMenuState());
#override
// TODO: implement initialState
MenuState get initialState => InitialMenuState();
#override
Stream<MenuState> mapEventToState(FoodEvent event) async* {
print("loading....");
yield Loading();
if (event is GetAllFoodEvent) {
print("Get all food....");
this.mapFoodList = {};
List<Food> allFood;
allFood= await _foodRepositiry.getAllFood() ;
try {
print("in menu bloc...... ");
allFood.forEach((food) {
print(food.toString());
if (!this.mapFoodList.containsKey(food.category)) {
this.mapFoodList[food.category.toString()] = [];
}
this.mapFoodList[food.category].add(food);
});
yield Loaded(mapFoodList: this.mapFoodList);
} catch (e, stacktrace) {
print(e.toString());
print(stacktrace.toString());
When I change List<Food> allFood;to Future<List<Food>> allFood; it gives me following error
I/flutter (16181): type '() => Future<List<Food>>' is not a subtype of type 'Future<List<Food>>'
This FoodRepository code.
class FoodRepository{
final foodDao=new FoodDao();
final foodApiClient =new FoodApiClient();
Future getAllFood() async{
if(await checkInternetConnection()) {
print("fetch data from remote server");
return foodApiClient.fetchAllFood;
}else{
print("from db");
return foodDao.getAllFood();
}
}
}
This is FoodApiClient code:
class FoodApiClient{
static const baseUrl = '10.0.2.2';
final http.Client httpClient;
FoodApiClient({this.httpClient});
Future<List<Food>> fetchAllFood()async{
String url=":8080/resturant/food/allFood";
// print(url);
List<Food> foodList;
print(url);
final allFoodResponse=await httpClient.get(baseUrl+url);
print(allFoodResponse);
if (allFoodResponse.statusCode != 200) {
throw Exception('An error occured while loading food list!!! status code: '+allFoodResponse.statusCode.toString());
}
print("foodJson");
List foodJson = json.decode(allFoodResponse.body);
print(foodJson);
//foodJson.forEach((food) {foodList.add(Food.fromJson(food)); });
foodList=foodJson.map((f)=>Food.fromJson(f)).toList();
return foodList;
}
}
Future getAllFood() async{
needs to be
Future<List<Food>> getAllFood() async {
and then you need to follow the compiler errors from there, because there are a lot more instances that I cannot all name and describe here.
I strongly advise you to use proper dart formatting, and the package pedantic to tell you all about your code and how to improve it if you cannot find those places yourself.

Not able to login with a Google email in Flutter

I'm trying to login in Flutter and this is the error I'm getting when I try to login with a Google email:
E/flutter (26329): [ERROR:flutter/lib/ui/ui_dart_state.cc(157)] Unhandled Exception: NoSuchMethodError: The method '[]' was called on null.
`enter code here`E/flutter (26329): Receiver: null
E/flutter (26329): Tried calling: []("email")
E/flutter (26329): #0 Object.noSuchMethod (dart:core-patch/object_patch.dart:53:5)
E/flutter (26329): #1 DocumentSnapshot.[] (package:cloud_firestore/src/document_snapshot.dart:29:42)
E/flutter (26329): #2 new User.fromDocument (package:buddiesgram/models/user.dart:23:17)
E/flutter (26329): #3 _HomePageState.saveUserInfoFirestore (package:buddiesgram/pages/HomePage.dart:83:26)
E/flutter (26329): <asynchronous suspension>
E/flutter (26329): #4 _HomePageState.controlSignIn (package:buddiesgram/pages/HomePage.dart:54:13)
E/flutter (26329): #5 _HomePageState.initState.<anonymous closure> (package:buddiesgram/pages/HomePage.dart:40:9)
E/flutter (26329): #6 _rootRunUnary (dart:async/zone.dart:1192:38)
E/flutter (26329): #7 _CustomZone.runUnary (dart:async/zone.dart:1085:19)
E/flutter (26329): #8 _CustomZone.runUnaryGuarded (dart:async/zone.dart:987:7)
E/flutter (26329): #9 _BufferingStreamSubscription._sendData (dart:async/stream_impl.dart:339:11)
E/flutter (26329): #10 _DelayedData.perform (dart:async/stream_impl.dart:594:14)
E/flutter (26329): #11 _StreamImplEvents.handleNext (dart:async/stream_impl.dart:710:11)
E/flutter (26329): #12 _PendingEvents.schedule.<anonymous closure> *emphasized text*(dart:async/stream_impl.dart:670:7)
E/flutter (26329): #13 _rootRun (dart:async/zone.dart:1180:38)
E/flutter (26329): #14 _CustomZone.run (dart:async/zone.dart:1077:19)
E/flutter (26329): #15 _CustomZone.runGuarded (dart:async/zone.dart:979:7)
E/flutter (26329): #16 _CustomZone.bindCallbackGuarded.<anonymous closure> (dart:async/zone.dart:1019:23)`**`*enter code here*`**`
E/flutter (26329): #17 _rootRun (dart:async/zone.dart:1184:13)
E/flutter (26329): #18 _CustomZone.run (dart:async/zone.dart:1077:19)
E/flutter (26329): #19 _CustomZone.runGuarded (dart:async/zone.dart:979:7)
E/flutter (26329): #20 _CustomZone.bindCallbackGuarded.<anonymous closure> (dart:async/zone.dart:1019:23)
E/flutter (26329): #21 _microtaskLoop (dart:async/schedule_microtask.dart:43:21)
E/flutter (26329): #22 _startMicrotaskLoop (dart:async/schedule_microtask.dart:52:5)
E/flutter (26329):
What am I missing?
Please include a code snippet of what you are trying to do
In my understanding of your stackTrace you are trying to call list on a null object like this:
final UserData userData = someObjectHere;
function login(UserData userData){
//The problem is that userData might be null which causes your issue
String email = userData[]("Email");
}
You're solution might be to use null aware operators or to manually check whether the object you're calling a method on is not null.
String email = userData?.[]("Email");
or
if(userData != null) String email = userData?.[]("Email");

Error while using games_services plugin: Unhandled Exception: PlatformException(error, 4: 4: , null)

I wanted to use google play services in my flutter application for which i used games_services plugin. I followed all the steps in this medium post. But it still gave me this error.
E/flutter (27643): [ERROR:flutter/lib/ui/ui_dart_state.cc(157)] Unhandled Exception: PlatformException(error, 4: 4: , null)
E/flutter (27643): #0 StandardMethodCodec.decodeEnvelope (package:flutter/src/services/message_codecs.dart:569)
E/flutter (27643): #1 MethodChannel.invokeMethod (package:flutter/src/services/platform_channel.dart:321)
E/flutter (27643): <asynchronous suspension>
E/flutter (27643): #2 GamesServices.signIn (package:games_services/games_services.dart:52)
E/flutter (27643): #3 _WelcomePageState.build.<anonymous closure> (package:quizbee/pages/home/welcome.dart:182)
E/flutter (27643): #4 _InkResponseState._handleTap (package:flutter/src/material/ink_well.dart:706)
E/flutter (27643): #5 _InkResponseState.build.<anonymous closure> (package:flutter/src/material/ink_well.dart:789)
E/flutter (27643): #6 GestureRecognizer.invokeCallback (package:flutter/src/gestures/recognizer.dart:182)
E/flutter (27643): #7 TapGestureRecognizer.handleTapUp (package:flutter/src/gestures/tap.dart:486)
E/flutter (27643): #8 BaseTapGestureRecognizer._checkUp (package:flutter/src/gestures/tap.dart:282)
E/flutter (27643): #9 BaseTapGestureRecognizer.handlePrimaryPointer (package:flutter/src/gestures/tap.dart:199)
E/flutter (27643): #10 PrimaryPointerGestureRecognizer.handleEvent (package:flutter/src/gestures/recognizer.dart:467)
E/flutter (27643): #11 PointerRouter._dispatch (package:flutter/src/gestures/pointer_router.dart:76)
E/flutter (27643): #12 PointerRouter._dispatchEventToRoutes.<anonymous closure> (package:flutter/src/gestures/pointer_router.dart:117)
E/flutter (27643): #13 _LinkedHashMapMixin.forEach (dart:collection-patch/compact_hash.dart:379)
E/flutter (27643): #14 PointerRouter._dispatchEventToRoutes (package:flutter/src/gestures/pointer_router.dart:115)
E/flutter (27643): #15 PointerRouter.route (package:flutter/src/gestures/pointer_router.dart:101)
E/flutter (27643): #16 GestureBinding.handleEvent (package:flutter/src/gestures/binding.dart:218)
E/flutter (27643): #17 GestureBinding.dispatchEvent (package:flutter/src/gestures/binding.dart:198)
E/flutter (27643): #18 GestureBinding._handlePointerEvent (package:flutter/src/gestures/binding.dart:156)
E/flutter (27643): #19 GestureBinding._flushPointerEventQueue (package:flutter/src/gestures/binding.dart:102)
E/flutter (27643): #20 GestureBinding._handlePointerDataPacket (package:flutter/src/gestures/binding.dart:86)
E/flutter (27643): #21 _rootRunUnary (dart:async/zone.dart:1138)
E/flutter (27643): #22 _CustomZone.runUnary (dart:async/zone.dart:1031)
E/flutter (27643): #23 _CustomZone.runUnaryGuarded (dart:async/zone.dart:933)
E/flutter (27643): #24 _invoke1 (dart:ui/hooks.dart:273)
E/flutter (27643): #25 _dispatchPointerDataPacket (dart:ui/hooks.dart:182)
Thank You in advance.

How to handle dispatch after object dispose in flutter_bloc package?

I am using flutter_bloc & bloc package to manage state.
In child page i am initialize bloc & while back parent page dispose the bloc object.
When i comes back immediately on parent page that time bloc throw error Unhandled Exception: Bad state: Cannot add new events after calling close because on child page on load i am calling api in bloc. which trigger state after completed api. At that time already bloc object disposed.
[ERROR:flutter/lib/ui/ui_dart_state.cc(148)] Unhandled Exception: Bad state: Cannot add new events after calling close
E/flutter (17290): #0 _BroadcastStreamController.add (dart:async/broadcast_stream_controller.dart:249:24)
E/flutter (17290): #1 Subject._add (package:rxdart/src/subjects/subject.dart:124:16)
E/flutter (17290): #2 Subject.add (package:rxdart/src/subjects/subject.dart:118:5)
E/flutter (17290): #3 Bloc._bindStateSubject.<anonymous closure> (package:bloc/src/bloc.dart:90:23)
E/flutter (17290): #4 Stream.forEach.<anonymous closure>.<anonymous closure> (dart:async/stream.dart:814:45)
E/flutter (17290): #5 _runUserCode (dart:async/stream_pipe.dart:11:23)
E/flutter (17290): #6 Stream.forEach.<anonymous closure> (dart:async/stream.dart:814:11)
E/flutter (17290): #7 _rootRunUnary (dart:async/zone.dart:1132:38)
E/flutter (17290): #8 _CustomZone.runUnary (dart:async/zone.dart:1029:19)
E/flutter (17290): #9 _CustomZone.runUnaryGuarded (dart:async/zone.dart:931:7)
E/flutter (17290): #10 _BufferingStreamSubscription._sendData (dart:async/stream_impl.dart:336:11)
E/flutter (17290): #11 _BufferingStreamSubscription._add (dart:async/stream_impl.dart:263:7)
E/flutter (17290): #12 _SyncBroadcastStreamController._sendData (dart:async/broadcast_stream_controller.dart:375:20)
E/flutter (17290): #13 _BroadcastStreamController._add (dart:async/broadcast_stream_controller.dart:287:5)
E/flutter (17290): #14 _rootRunUnary (dart:async/zone.dart:1132:38)
E/flutter (17290): #15 _CustomZone.runUnary (dart:async/zone.dart:1029:19)
E/flutter (17290): #16 _CustomZone.runUnaryGuarded (dart:async/zone.dart:931:7)
E/flutter (17290): #17 _BufferingStreamSubscription._sendData (dart:async/stream_impl.dart:336:11)
E/flutter (17290): #18 _BufferingStreamSubscription._add (dart:async/stream_impl.dart:263:7)
E/flutter (17290): #19 _ForwardingStreamSubscription._add (dart:async/stream_pipe.dart:132:11)
E/flutter (17290): #20 _ForwardingStream._handleData (dart:async/stream_pipe.dart:98:10)
E/flutter (17290): #21 _ForwardingStreamSubscription._handleData (dart:async/stream_pipe.dart:164:13)
E/flutter (17290): #22 _rootRunUnary (dart:async/zone.dart:1132:38)
E/flutter (17290): #23 _CustomZone.runUnary (dart:async/zone.dart:1029:19)
E/flutter (17290): #24 _CustomZone.runUnaryGuarded (dart:async/zone.dart:931:7)
E/flutter (17290): #25 _BufferingStreamSubscription._sendData (dart:async/stream_impl.dart:336:11)
E/flutter (17290): #26 _DelayedData.perform (dart:async/stream_impl.dart:591:14)
E/flutter (17290): #27 _StreamImplEvents.handleNext (dart:async/stream_impl.dart:707:11)
E/flutter (17290): #28 _PendingEvents.schedule.<anonymous closure> (dart:async/stream_impl.dart:667:7)
E/flutter (17290): #29 _rootRun (dart:async/zone.dart:1120:38)
E/flutter (17290): #30 _CustomZone.run (dart:async/zone.dart:1021:19)
E/flutter (17290): #31 _CustomZone.runGuarded (dart:async/zone.dart:923:7)
E/flutter (17290): #32 _CustomZone.bindCallbackGuarded.<anonymous closure> (dart:async/zone.dart:963:23)
E/flutter (17290): #33 _rootRun (dart:async/zone.dart:1124:13)
E/flutter (17290): #34 _CustomZone.run (dart:async/zone.dart:1021:19)
E/flutter (17290): #35 _CustomZone.runGuarded (dart:async/zone.dart:923:7)
E/flutter (17290): #36 _CustomZone.bindCallbackGuarded.<anonymous closure> (dart:async/zone.dart:963:23)
E/flutter (17290): #37 _microtaskLoop (dart:async/schedule_microtask.dart:41:21)
E/flutter (17290): #38 _startMicrotaskLoop (dart:async/schedule_microtask.dart:50:5)
So how handle these when bloc already disposed ?
Use common bloc for parent and child.
Create/Initialise bloc in parent when calling child do as following:
`BlocProvider.value( value: BlocProvider.of<BlocA>(context), child: ScreenA(), );`
By writing above you will keep alive the bloc from dispose,
Then you can simply access bloc in child as following:
BlocProvider.of<BlocA>(context)
Just don't dispose it in child,
And then, when you go back to parent from child your bloc won't get disposed and it will only dispose when parent destroy or dispose.
Everything is written there in readme:
https://pub.dev/packages/flutter_bloc