[Bloc 응용] 실전 앱 만들기 (책 리뷰 앱) : SNS 로그인, Firebase 적용, Bloc 상태 관리, GoRouter
강의 내용 따라하면서 하고 있는데요 강사님하고는 다르게 아래와 같이 기본값을 넣어라 정의되어 있지 않다? 아래 캡쳐와 같이 나오더라구요 막혀서 더이상 진행이 안되고 있는데 제가 한 부분 첨부 드리니 확인 부탁드릴께요! https://drive.google.com/file/d/1609gWfNr-B7Nvc9dlBW9ve_zGff89gd2/view?usp=sharing
[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
코드팩토리님 강의 잘 보고 있습니다. 제가 간단하게 만든 앱을 안드로이드에 배포하려고 합니다. 메뉴의 빌드 - 플러터 - 빌드 앱 번들 을 선택하면 위와 같은 에러가 납니다. 아무리 봐도 어떻게 해결해야할 지 모르겠습니다. 도와주시면 정말감사드리겠습니다. 그리고 앱을 출시하는 방법에 대해서 강의하신 내용이 있으신가요? 구글링해봐도 잘 모르겠네요ㅠ
[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세용 현재 23.6월 기준 플러터 다운받으려고 하는데 강의 영상과 플러터 홈페이지가 좀 달라서 질문드립니다. 강의영상 녹화 당시에는 깃으로 플러터 SDK 다운받는 코드(커맨드)가 있었는데 현재기준은 없네요ㅠㅠ 현재 깃까지 다운받은 상태입니다..! 코드팩토리 디스코드 https://bit.ly/3HzRzUM Flutter 강의를 구매하시면 코드팩토리 디스코드 서버 플러터 프리미엄 채널에 들어오실 수 있습니다! 디스코드 서버에 들어오시고 저에게 메세지로 강의를 구매하신 이메일을 보내주시면 프리미엄 채널에 등록해드려요! 프리미엄 채널에 들어오시면 모든 질의응답 최우선으로 답변해드립니다!
다트 강의를 다 듣고 20%도 이해가 되지 않는 상태에서 플러터 초급([코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!) 강의로 넘어가도 되는지 궁금합니다. 1. 다트를 예제를 보지 않고 혼자서 코딩할 수 있는 수준까지 도달 후 초급 강의로 넘어가는 게 좋을지.. 2. 혼자서 코딩은 못해도 개념(원리) 정도만 이해하고 넘어가도 되는 건지 궁금합니다. 답변 부탁드립니다.
아래와 같은 에러가 나서 질문 드립니다. Performing hot restart... Syncing files to device iPhone 13 Pro... Restarted application in 234ms. [VERBOSE-2:dart_vm_initializer.cc(41)] Unhandled Exception: Bad state: Tried to read a provider that threw during the creation of its value. The exception occurred during the creation of type HomeViewModel. ══╡ EXCEPTION CAUGHT BY PROVIDER ╞═══════════════════════════════ The following ProviderNotFoundException was thrown: Error: Could not find the correct Provider<PhotoApiRepositoryImpl> above this _InheritedProviderScope<GetPhotosUseCase?> Widget This happens because you used a `BuildContext` that does not include the provider of your choice. There are a few common scenarios: - You added a new provider in your `main.dart` and performed a hot-reload. To fix, perform a hot-restart. - The provider you are trying to read is in a different route. Providers are "scoped". So if you insert of provider inside a route, then other routes will not be able to access that provider. - You used a `BuildContext` that is an ancestor of<…> ======== Exception caught by widgets library ======================================================= The following ProviderNotFoundException was thrown building HomeScreen(dirty, dependencies: [_InheritedProviderScope<HomeViewModel?>], state: _HomeScreenState#f4eba): Error: Could not find the correct Provider<PhotoApiRepositoryImpl> above this _InheritedProviderScope<GetPhotosUseCase?> Widget This happens because you used a `BuildContext` that does not include the provider of your choice. There are a few common scenarios: - You added a new provider in your `main.dart` and performed a hot-reload. To fix, perform a hot-restart. - The provider you are trying to read is in a different route. Providers are "scoped". So if you insert of provider inside a route, then other routes will not be able to access that provider. - You used a `BuildContext` that is an ancestor of the provider you are trying to read. Make sure that _InheritedProviderScope<GetPhotosUseCase?> is under your MultiProvider/Provider<PhotoApiRepositoryImpl>. This usually happens when you are creating a provider and trying to read it immediately. For example, instead of: ``` Widget build(BuildContext context) { return Provider<Example>( create: (_) => Example(), // Will throw a ProviderNotFoundError, because `context` is associated // to the widget that is the parent of `Provider<Example>` child: Text(context.watch<Example>().toString()), ); } ``` consider using `builder` like so: ``` Widget build(BuildContext context) { return Provider<Example>( create: (_) => Example(), // we use `builder` to obtain a new `BuildContext` that has access to the provider builder: (context, child) { // No longer throws return Text(context.watch<Example>().toString()); } ); } ``` If none of these solutions work, consider asking for help on StackOverflow: https://stackoverflow.com/questions/tagged/flutter The relevant error-causing widget was: HomeScreen HomeScreen:file:///Users/seongjin/Desktop/oliver/programming/Flutter/image_search/lib/main.dart:32:19 When the exception was thrown, this was the stack: #0 Provider._inheritedElementOf (package:provider/src/provider.dart:343:7) #1 Provider.of (package:provider/src/provider.dart:293:30) #2 new ProxyProvider.<anonymous closure> (package:provider/src/proxy_provider.dart:162:22) #3 _CreateInheritedProviderState.value (package:provider/src/inherited_provider.dart:767:36) #4 _InheritedProviderScopeElement.value (package:provider/src/inherited_provider.dart:590:33) #5 Provider.of (package:provider/src/provider.dart:303:37) #6 ReadContext.read (package:provider/src/provider.dart:649:21) #7 viewModels.<anonymous closure> (package:image_search/data/di/provider_setup.dart:40:50) #8 _CreateInheritedProviderState.value (package:provider/src/inherited_provider.dart:736:36) #9 _InheritedProviderScopeElement.value (package:provider/src/inherited_provider.dart:590:33) #10 Provider.of (package:provider/src/provider.dart:303:37) #11 WatchContext.watch (package:provider/src/provider.dart:693:21) #12 _HomeScreenState.build (package:image_search/presentation/home/home_screen.dart:44:31) #13 StatefulElement.build (package:flutter/src/widgets/framework.dart:5198:27) #14 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5086:15) #15 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:5251:11) #16 Element.rebuild (package:flutter/src/widgets/framework.dart:4805:7) #17 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:5068:5) #18 StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:5242:11) #19 ComponentElement.mount (package:flutter/src/widgets/framework.dart:5062:5) ... Normal element mounting (24 frames) #43 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3971:16) #44 MultiChildRenderObjectElement.inflateWidget (package:flutter/src/widgets/framework.dart:6570:36) #45 MultiChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:6582:32) ... Normal element mounting (178 frames) #223 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3971:16) #224 MultiChildRenderObjectElement.inflateWidget (package:flutter/src/widgets/framework.dart:6570:36) #225 MultiChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:6582:32) ... Normal element mounting (472 frames) #697 _InheritedProviderScopeElement.mount (package:provider/src/inherited_provider.dart:411:11) ... Normal element mounting (7 frames) #704 SingleChildWidgetElementMixin.mount (package:nested/nested.dart:222:11) ... Normal element mounting (7 frames) #711 _NestedHookElement.mount (package:nested/nested.dart:187:11) ... Normal element mounting (7 frames) #718 _InheritedProviderScopeElement.mount (package:provider/src/inherited_provider.dart:411:11) ... Normal element mounting (7 frames) #725 SingleChildWidgetElementMixin.mount (package:nested/nested.dart:222:11) ... Normal element mounting (7 frames) #732 _NestedHookElement.mount (package:nested/nested.dart:187:11) ... Normal element mounting (7 frames) #739 _InheritedProviderScopeElement.mount (package:provider/src/inherited_provider.dart:411:11) ... Normal element mounting (7 frames) #746 SingleChildWidgetElementMixin.mount (package:nested/nested.dart:222:11) ... Normal element mounting (7 frames) #753 _NestedHookElement.mount (package:nested/nested.dart:187:11) ... Normal element mounting (7 frames) #760 _InheritedProviderScopeElement.mount (package:provider/src/inherited_provider.dart:411:11) ... Normal element mounting (7 frames) #767 SingleChildWidgetElementMixin.mount (package:nested/nested.dart:222:11) ... Normal element mounting (7 frames) #774 _NestedHookElement.mount (package:nested/nested.dart:187:11) ... Normal element mounting (7 frames) #781 _InheritedProviderScopeElement.mount (package:provider/src/inherited_provider.dart:411:11) ... Normal element mounting (7 frames) #788 SingleChildWidgetElementMixin.mount (package:nested/nested.dart:222:11) ... Normal element mounting (7 frames) #795 _NestedHookElement.mount (package:nested/nested.dart:187:11) ... Normal element mounting (7 frames) #802 SingleChildWidgetElementMixin.mount (package:nested/nested.dart:222:11) ... Normal element mounting (27 frames) #829 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3971:16) #830 Element.updateChild (package:flutter/src/widgets/framework.dart:3708:18) #831 RenderObjectToWidgetElement._rebuild (package:flutter/src/widgets/binding.dart:1240:16) #832 RenderObjectToWidgetElement.mount (package:flutter/src/widgets/binding.dart:1209:5) #833 RenderObjectToWidgetAdapter.attachToRenderTree.<anonymous closure> (package:flutter/src/widgets/binding.dart:1156:18) #834 BuildOwner.buildScope (package:flutter/src/widgets/framework.dart:2720:19) #835 RenderObjectToWidgetAdapter.attachToRenderTree (package:flutter/src/widgets/binding.dart:1155:13) #836 WidgetsBinding.attachRootWidget (package:flutter/src/widgets/binding.dart:988:7) #837 WidgetsBinding.scheduleAttachRootWidget.<anonymous closure> (package:flutter/src/widgets/binding.dart:968:7) #841 _RawReceivePort._handleMessage (dart:isolate-patch/isolate_patch.dart:189:12) (elided 3 frames from class _Timer and dart:async-patch) ==================================================================================================== ======== Exception caught by Flutter framework ===================================================== The following StateError was thrown during a service extension callback for "ext.flutter.platformOverride": Bad state: Tried to read a provider that threw during the creation of its value. The exception occurred during the creation of type HomeViewModel. ══╡ EXCEPTION CAUGHT BY PROVIDER ╞═══════════════════════════════ The following ProviderNotFoundException was thrown: Error: Could not find the correct Provider<PhotoApiRepositoryImpl> above this _InheritedProviderScope<GetPhotosUseCase?> Widget This happens because you used a `BuildContext` that does not include the provider of your choice. There are a few common scenarios: - You added a new provider in your `main.dart` and performed a hot-reload. To fix, perform a hot-restart. - The provider you are trying to read is in a different route. Providers are "scoped". So if you insert of provider inside a route, then other routes will not be able to access that provider. - You used a `BuildContext` that is an ancestor of the provider you are trying to read. Make sure that _InheritedProviderScope<GetPhotosUseCase?> is under your MultiProvider/Provider<PhotoApiRepositoryImpl>. This usually happens when you are creating a provider and trying to read it immediately. For example, instead of: ``` Widget build(BuildContext context) { return Provider<Example>( create: (_) => Example(), // Will throw a ProviderNotFoundError, because `context` is associated // to the widget that is the parent of `Provider<Example>` child: Text(context.watch<Example>().toString()), ); } ``` consider using `builder` like so: ``` Widget build(BuildContext context) { return Provider<Example>( create: (_) => Example(), // we use `builder` to obtain a new `BuildContext` that has access to the provider builder: (context, child) { // No longer throws return Text(context.watch<Example>().toString()); } ); } ``` If none of these solutions work, consider asking for help on StackOverflow: https://stackoverflow.com/questions/tagged/flutter When the exception was thrown, this was the stack: #0 Provider._inheritedElementOf (package:provider/src/provider.dart:343:7) #1 Provider.of (package:provider/src/provider.dart:293:30) #2 new ProxyProvider.<anonymous closure> (package:provider/src/proxy_provider.dart:162:22) #3 _CreateInheritedProviderState.value (package:provider/src/inherited_provider.dart:767:36) #4 _InheritedProviderScopeElement.value (package:provider/src/inherited_provider.dart:590:33) #5 Provider.of (package:provider/src/provider.dart:303:37) #6 ReadContext.read (package:provider/src/provider.dart:649:21) #7 viewModels.<anonymous closure> (package:image_search/data/di/provider_setup.dart:40:50) #8 _CreateInheritedProviderState.value (package:provider/src/inherited_provider.dart:736:36) #9 _InheritedProviderScopeElement.value (package:provider/src/inherited_provider.dart:590:33) #10 Provider.of (package:provider/src/provider.dart:303:37) #11 WatchContext.watch (package:provider/src/provider.dart:693:21) #12 _HomeScreenState.build (package:image_search/presentation/home/home_screen.dart:44:31) #13 StatefulElement.build (package:flutter/src/widgets/framework.dart:5198:27) #14 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:5086:15) #15 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:5251:11) #16 Element.rebuild (package:flutter/src/widgets/framework.dart:4805:7) #17 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:5068:5) #18 StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:5242:11) #19 ComponentElement.mount (package:flutter/src/widgets/framework.dart:5062:5) ... Normal element mounting (24 frames) #43 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3971:16) #44 MultiChildRenderObjectElement.inflateWidget (package:flutter/src/widgets/framework.dart:6570:36) #45 MultiChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:6582:32) ... Normal element mounting (178 frames) #223 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3971:16) #224 MultiChildRenderObjectElement.inflateWidget (package:flutter/src/widgets/framework.dart:6570:36) #225 MultiChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:6582:32) ... Normal element mounting (472 frames) #697 _InheritedProviderScopeElement.mount (package:provider/src/inherited_provider.dart:411:11) ... Normal element mounting (7 frames) #704 SingleChildWidgetElementMixin.mount (package:nested/nested.dart:222:11) ... Normal element mounting (7 frames) #711 _NestedHookElement.mount (package:nested/nested.dart:187:11) ... Normal element mounting (7 frames) #718 _InheritedProviderScopeElement.mount (package:provider/src/inherited_provider.dart:411:11) ... Normal element mounting (7 frames) #725 SingleChildWidgetElementMixin.mount (package:nested/nested.dart:222:11) ... Normal element mounting (7 frames) #732 _NestedHookElement.mount (package:nested/nested.dart:187:11) ... Normal element mounting (7 frames) #739 _InheritedProviderScopeElement.mount (package:provider/src/inherited_provider.dart:411:11) ... Normal element mounting (7 frames) #746 SingleChildWidgetElementMixin.mount (package:nested/nested.dart:222:11) ... Normal element mounting (7 frames) #753 _NestedHookElement.mount (package:nested/nested.dart:187:11) ... Normal element mounting (7 frames) #760 _InheritedProviderScopeElement.mount (package:provider/src/inherited_provider.dart:411:11) ... Normal element mounting (7 frames) #767 SingleChildWidgetElementMixin.mount (package:nested/nested.dart:222:11) ... Normal element mounting (7 frames) #774 _NestedHookElement.mount (package:nested/nested.dart:187:11) ... Normal element mounting (7 frames) #781 _InheritedProviderScopeElement.mount (package:provider/src/inherited_provider.dart:411:11) ... Normal element mounting (7 frames) #788 SingleChildWidgetElementMixin.mount (package:nested/nested.dart:222:11) ... Normal element mounting (7 frames) #795 _NestedHookElement.mount (package:nested/nested.dart:187:11) ... Normal element mounting (7 frames) #802 SingleChildWidgetElementMixin.mount (package:nested/nested.dart:222:11) ... Normal element mounting (27 frames) #829 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3971:16) #830 Element.updateChild (package:flutter/src/widgets/framework.dart:3708:18) #831 RenderObjectToWidgetElement._rebuild (package:flutter/src/widgets/binding.dart:1240:16) #832 RenderObjectToWidgetElement.mount (package:flutter/src/widgets/binding.dart:1209:5) #833 RenderObjectToWidgetAdapter.attachToRenderTree.<anonymous closure> (package:flutter/src/widgets/binding.dart:1156:18) #834 BuildOwner.buildScope (package:flutter/src/widgets/framework.dart:2720:19) #835 RenderObjectToWidgetAdapter.attachToRenderTree (package:flutter/src/widgets/binding.dart:1155:13) #836 WidgetsBinding.attachRootWidget (package:flutter/src/widgets/binding.dart:988:7) #837 WidgetsBinding.scheduleAttachRootWidget.<anonymous closure> (package:flutter/src/widgets/binding.dart:968:7) #841 _RawReceivePort._handleMessage (dart:isolate-patch/isolate_patch.dart:189:12) (elided 3 frames from class _Timer and dart:async-patch) ═════════════════════════════════════════════════════════════════ When the exception was thrown, this was the stack: #0 _CreateInheritedProviderState.value (package:provider/src/inherited_provider.dart:709:7) #1 _InheritedProviderScopeElement.reassemble (package:provider/src/inherited_provider.dart:422:60) #2 Element.reassemble.<anonymous closure> (package:flutter/src/widgets/framework.dart:3434:13) #3 ComponentElement.visitChildren (package:flutter/src/widgets/framework.dart:5138:14) #4 Element.reassemble (package:flutter/src/widgets/framework.dart:3432:5) #5 Element.reassemble.<anonymous closure> (package:flutter/src/widgets/framework.dart:3434:13) #6 ComponentElement.visitChildren (package:flutter/src/widgets/framework.dart:5138:14) #7 Element.reassemble (package:flutter/src/widgets/framework.dart:3432:5) #8 Element.reassemble.<anonymous closure> (package:flutter/src/widgets/framework.dart:3434:13) #9 ComponentElement.visitChildren (package:flutter/src/widgets/framework.dart:5138:14) #10 Element.reassemble (package:flutter/src/widgets/framework.dart:3432:5) #11 _InheritedProviderScopeElement.reassemble (package:provider/src/inherited_provider.dart:420:11) #12 Element.reassemble.<anonymous closure> (package:flutter/src/widgets/framework.dart:3434:13) #13 ComponentElement.visitChildren (package:flutter/src/widgets/framework.dart:5138:14) #14 Element.reassemble (package:flutter/src/widgets/framework.dart:3432:5) #15 Element.reassemble.<anonymous closure> (package:flutter/src/widgets/framework.dart:3434:13) #16 ComponentElement.visitChildren (package:flutter/src/widgets/framework.dart:5138:14) #17 Element.reassemble (package:flutter/src/widgets/framework.dart:3432:5) #18 Element.reassemble.<anonymous closure> (package:flutter/src/widgets/framework.dart:3434:13) #19 ComponentElement.visitChildren (package:flutter/src/widgets/framework.dart:5138:14) #20 Element.reassemble (package:flutter/src/widgets/framework.dart:3432:5) #21 _InheritedProviderScopeElement.reassemble (package:provider/src/inherited_provider.dart:420:11) #22 Element.reassemble.<anonymous closure> (package:flutter/src/widgets/framework.dart:3434:13) #23 ComponentElement.visitChildren (package:flutter/src/widgets/framework.dart:5138:14) #24 Element.reassemble (package:flutter/src/widgets/framework.dart:3432:5) #25 Element.reassemble.<anonymous closure> (package:flutter/src/widgets/framework.dart:3434:13) #26 ComponentElement.visitChildren (package:flutter/src/widgets/framework.dart:5138:14) #27 Element.reassemble (package:flutter/src/widgets/framework.dart:3432:5) #28 Element.reassemble.<anonymous closure> (package:flutter/src/widgets/framework.dart:3434:13) #29 ComponentElement.visitChildren (package:flutter/src/widgets/framework.dart:5138:14) #30 Element.reassemble (package:flutter/src/widgets/framework.dart:3432:5) #31 _InheritedProviderScopeElement.reassemble (package:provider/src/inherited_provider.dart:420:11) #32 Element.reassemble.<anonymous closure> (package:flutter/src/widgets/framework.dart:3434:13) #33 ComponentElement.visitChildren (package:flutter/src/widgets/framework.dart:5138:14) #34 Element.reassemble (package:flutter/src/widgets/framework.dart:3432:5) #35 Element.reassemble.<anonymous closure> (package:flutter/src/widgets/framework.dart:3434:13) #36 ComponentElement.visitChildren (package:flutter/src/widgets/framework.dart:5138:14) #37 Element.reassemble (package:flutter/src/widgets/framework.dart:3432:5) #38 Element.reassemble.<anonymous closure> (package:flutter/src/widgets/framework.dart:3434:13) #39 ComponentElement.visitChildren (package:flutter/src/widgets/framework.dart:5138:14) #40 Element.reassemble (package:flutter/src/widgets/framework.dart:3432:5) #41 _InheritedProviderScopeElement.reassemble (package:provider/src/inherited_provider.dart:420:11) #42 Element.reassemble.<anonymous closure> (package:flutter/src/widgets/framework.dart:3434:13) #43 ComponentElement.visitChildren (package:flutter/src/widgets/framework.dart:5138:14) #44 Element.reassemble (package:flutter/src/widgets/framework.dart:3432:5) #45 Element.reassemble.<anonymous closure> (package:flutter/src/widgets/framework.dart:3434:13) #46 ComponentElement.visitChildren (package:flutter/src/widgets/framework.dart:5138:14) #47 Element.reassemble (package:flutter/src/widgets/framework.dart:3432:5) #48 Element.reassemble.<anonymous closure> (package:flutter/src/widgets/framework.dart:3434:13) #49 ComponentElement.visitChildren (package:flutter/src/widgets/framework.dart:5138:14) #50 Element.reassemble (package:flutter/src/widgets/framework.dart:3432:5) #51 Element.reassemble.<anonymous closure> (package:flutter/src/widgets/framework.dart:3434:13) #52 ComponentElement.visitChildren (package:flutter/src/widgets/framework.dart:5138:14) #53 Element.reassemble (package:flutter/src/widgets/framework.dart:3432:5) #54 Element.reassemble.<anonymous closure> (package:flutter/src/widgets/framework.dart:3434:13) #55 ComponentElement.visitChildren (package:flutter/src/widgets/framework.dart:5138:14) #56 Element.reassemble (package:flutter/src/widgets/framework.dart:3432:5) #57 StatefulElement.reassemble (package:flutter/src/widgets/framework.dart:5213:11) #58 Element.reassemble.<anonymous closure> (package:flutter/src/widgets/framework.dart:3434:13) #59 ComponentElement.visitChildren (package:flutter/src/widgets/framework.dart:5138:14) #60 Element.reassemble (package:flutter/src/widgets/framework.dart:3432:5) #61 Element.reassemble.<anonymous closure> (package:flutter/src/widgets/framework.dart:3434:13) #62 ComponentElement.visitChildren (package:flutter/src/widgets/framework.dart:5138:14) #63 Element.reassemble (package:flutter/src/widgets/framework.dart:3432:5) #64 Element.reassemble.<anonymous closure> (package:flutter/src/widgets/framework.dart:3434:13) #65 RenderObjectToWidgetElement.visitChildren (package:flutter/src/widgets/binding.dart:1194:14) #66 Element.reassemble (package:flutter/src/widgets/framework.dart:3432:5) #67 BuildOwner.reassemble (package:flutter/src/widgets/framework.dart:3162:12) #68 WidgetsBinding.performReassemble (package:flutter/src/widgets/binding.dart:1008:19) #69 BindingBase.lockEvents (package:flutter/src/foundation/binding.dart:652:41) #70 BindingBase.reassembleApplication (package:flutter/src/foundation/binding.dart:691:12) #71 BindingBase.initServiceExtensions.<anonymous closure>.<anonymous closure> (package:flutter/src/foundation/binding.dart:587:19) #72 BindingBase.registerServiceExtension.<anonymous closure> (package:flutter/src/foundation/binding.dart:936:32) <asynchronous suspension> ==================================================================================================== ======== Exception caught by scheduler library ===================================================== The following _TypeError was thrown during a scheduler callback: type 'Null' is not a subtype of type 'GetPhotosUseCase' in type cast When the exception was thrown, this was the stack: #0 _CreateInheritedProviderState.value (package:provider/src/inherited_provider.dart:789:19) #1 _CreateInheritedProviderState.debugFillProperties (package:provider/src/inherited_provider.dart:806:44) #2 _InheritedProviderScopeElement.debugFillProperties (package:provider/src/inherited_provider.dart:631:20) #3 _InheritedProviderElement.debugFillProperties.<anonymous closure> (package:provider/src/inherited_provider.dart:180:28) #4 ComponentElement.visitChildren (package:flutter/src/widgets/framework.dart:5138:14) #5 _InheritedProviderElement.debugFillProperties (package:provider/src/inherited_provider.dart:180:5) #6 DiagnosticableNode.builder.<anonymous closure> (package:flutter/src/foundation/diagnostics.dart:2891:17) #7 DiagnosticableNode.builder (package:flutter/src/foundation/diagnostics.dart:2894:8) #8 DiagnosticableNode.getProperties (package:flutter/src/foundation/diagnostics.dart:2908:105) #9 DiagnosticsProperty.toJsonMap (package:flutter/src/foundation/diagnostics.dart:2613:57) #10 DiagnosticsNode.toJsonList.<anonymous closure> (package:flutter/src/foundation/diagnostics.dart:1675:19) #11 MappedListIterable.elementAt (dart:_internal/iterable.dart:415:31) #12 ListIterator.moveNext (dart:_internal/iterable.dart:344:26) #13 new _GrowableList._ofEfficientLengthIterable (dart:core-patch/growable_array.dart:189:27) #14 new _GrowableList.of (dart:core-patch/growable_array.dart:150:28) #15 new List.of (dart:core-patch/array_patch.dart:47:28) #16 ListIterable.toList (dart:_internal/iterable.dart:214:7) #17 DiagnosticsNode.toJsonList (package:flutter/src/foundation/diagnostics.dart:1676:8) #18 DiagnosticsNode.toJsonMap.<anonymous closure> (package:flutter/src/foundation/diagnostics.dart:1637:25) #19 DiagnosticsNode.toJsonMap (package:flutter/src/foundation/diagnostics.dart:1650:6) #20 WidgetInspectorService._nodeToJson (package:flutter/src/widgets/widget_inspector.dart:1652:18) #21 WidgetInspectorService._reportStructuredError (package:flutter/src/widgets/widget_inspector.dart:929:44) #22 FlutterError.reportError (package:flutter/src/foundation/assertions.dart:1185:14) #23 _reportException (package:flutter/src/widgets/framework.dart:6628:16) #24 BuildOwner.buildScope (package:flutter/src/widgets/framework.dart:2782:11) #25 WidgetsBinding.drawFrame (package:flutter/src/widgets/binding.dart:903:21) #26 RendererBinding._handlePersistentFrameCallback (package:flutter/src/rendering/binding.dart:358:5) #27 SchedulerBinding._invokeFrameCallback (package:flutter/src/scheduler/binding.dart:1284:15) #28 SchedulerBinding.handleDrawFrame (package:flutter/src/scheduler/binding.dart:1214:9) #29 SchedulerBinding._handleDrawFrame (package:flutter/src/scheduler/binding.dart:1072:5) #30 _invoke (dart:ui/hooks.dart:142:13) #31 PlatformDispatcher._drawFrame (dart:ui/platform_dispatcher.dart:359:5) #32 _drawFrame (dart:ui/hooks.dart:112:31) ====================================================================================================
[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!
bottomnavigatorbar만 사용할때와 bottomnavigatorbar와 tabbarview를 사용하는데 physics: NeverScrollableScrollPhysics() 이 조건을 추가하는거랑 어차피 bottomnavigatorbar로만 화면 이동이 가능한데 두개의 차이점이 무엇인지 궁금합니다!
[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
table_calendar에서 onRangeSelected를 사용하다가 시작일과 종료일이 2일 이상이 아니라 하루로 기간을 설정하고 싶을 땐 어떻게 해야할지 궁금해서 질문드립니다. 선택한 기간의 시작일과 종료일의 날짜를 다른 페이지로 전달하려고 할 때 시작일만 선택하고 전달해주면 되는 것일까요?
[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!
provider로 pagination을 하는데 이렇게 전체 데이터를 불러오는 경우를 제외한 카테고리 별로 불러오기 검색으로 불러오기 위의 경우가 있을 때 보통 어떻게 하나요 같은 provider를 쓴다면 state를 초기화하고 prameter를 다르게 하여 불러오나요 아니면 카테고리별 검색 별 provider를 따로 만들어서 불러오나요?
[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!
안녕하세요. 강사님 페이스북 sns 로그인 기능을 추가하여 앱 사용하고 있었습니다. 현재 안드로이드는 페이스북 로그인 사용 가능하도록, ios는 로그인 아이콘을 숨김 처리하여 사용 하지 못하게 막아 놓은 상태입니다. 이런 sns 로그인 기능의 경우 안드로이드, ios 동일하게 사용하도록 아이콘을 오픈해야하는지와 플랫폼 정책이 있는지 궁금합니다. 감사합니다.
강의 마지막 부분에 StreamSubscription 해제 관련해서 질문드립니다. dispose에서 _subscription?.cancel(); 해주는데 다시 화면에 들어가면 오류가 발생하여 StreamController 의 속성을 boradcast 로 주어 오류를 해결하셧는데 stream 을 해제해야 StreamSubscription 이 해제되어야 할 것 같은데 broadcast 에서는 이전에 구독한게 계속 남아있지 않을까요??