안드로이드 스튜디오에서 코딩하는 것까지는 괜찮은데, 에뮬레이터로 실행해서 화면 띄우는 거까지 보려면 속도가 너무 느립니다. 에러가 있을 경우에는 더 답답하고요. 일반적인 사무, 인터넷용으로는 답답함을 전혀 못 느꼈는데, 유독 코딩할 때만 너무 느리네요 컴퓨터를 새걸로 바꿔야 하나 싶기도 한데, 안드로이드 스튜디오 에뮬레이터를 원활히 돌리려면 컴퓨터 사양이 어느 정도 되면 될까요? (gpu도 좋은게 있어야 할까요? 제가 게임은 별로 안해서요..) 참고로 현재 컴퓨터 사양은 cpu: amd 3300 ram: 8기가 ssd: 500gb gpu: 메인보드 내장형 입니다.
안드로이드 스튜디오에서 코딩하는 것까지는 괜찮은데, 에뮬레이터로 실행해서 화면 띄우는 거까지 보려면 속도가 너무 느립니다. 에러가 있을 경우에는 더 답답하고요. 일반적인 사무, 인터넷용으로는 답답함을 전혀 못 느꼈는데, 유독 코딩할 때만 너무 느리네요 컴퓨터를 새걸로 바꿔야 하나 싶기도 한데, 안드로이드 스튜디오 에뮬레이터를 원활히 돌리려면 컴퓨터 사양이 어느 정도 되면 될까요? (gpu도 좋은게 있어야 할까요? 제가 게임은 별로 안해서요..) 참고로 현재 컴퓨터 사양은 cpu: amd 3300 ram: 8기가 ssd: 500gb gpu: 메인보드 내장형 입니다.
[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!
안녕하세요 상태관리 프로젝트에 적용하기 부분이 많이 어렵네요 여러번 강의를 보고 restaurant_provider.dart의 코드를 보며 이해를 하려 했는데 제가 이해를 한것이 맞는지 몰라 이곳에 질문을 남기게 되었습니다. CursorPagination의 상태 관련 5개중 아래 두가지 상태를 제가 이해한게 맞나요?? 두가지 모두 로딩중인데 아래 상황에서 로딩중 CursorPaginationRefetching: 데이터를 받아온 상태에서 다시 새로고침을 하여 로딩 중 CursorPaginationFetchMore: 데이터를 받아온 상태에서 새로운 데이터를 추가 하는 중 바로 반환하는 상황 바로 반환하는 상황이라는 것이 데이터를 받아 오는 중, 즉 로딩중 일때나 더이상 추가 데이터가 없을 때paginate() 함수 바로 빠져 나와야 한다는 뜻인가요?? 그리고 fetchMore가 아닐때 - 새로고침의 의도가 있을 수 있다. fetchMore가 아닐때라고 주석을 달아 주셨는데 이것은 false일때라는 뜻인가요?? 그럼 감사합니다 .
[Bloc 응용] 실전 앱 만들기 (책 리뷰 앱) : SNS 로그인, Firebase 적용, Bloc 상태 관리, GoRouter
안녕하세요 개남님 (base) choejonghwan@choejonghwan-ui-MacBookPro review_book % flutter pub run build_runner watch 이거 하고나서부터 [INFO] Generating build script completed, took 149ms [INFO] Setting up file watchers completed, took 4ms [INFO] Waiting for all file watchers to be ready completed, took 201ms [INFO] Reading cached asset graph completed, took 34ms [INFO] Checking for updates since last build completed, took 470ms [INFO] Running build completed, took 6ms [INFO] Caching finalized dependency graph completed, took 20ms [INFO] Succeeded after 28ms with 0 outputs (0 actions) 여기까진 왔는데 멈추네요 여기서... part 'naver_book_search_option.g.dart'; 가 뜨지도않고.. 사진 두개첨부합니다. 감사합니다.
[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!
final baseBorder = const OutlineInputBorder( borderSide: BorderSide( color: INPUT_BORDER_COLOR, ), ); 이 코드를 CustomTextFormField 클래스의 필드로 넣지 않고 build 메서드 안에 작성하신 이유가 따로 있을까요? 이렇게 작성하면 렌더링될때마다 baseBorder가 만들어져야하니 메모리관리면에서 손해인거 아닌가 싶어서요!
프로젝트를 생성하고 첫 실행을 했는데 아래와 같은 오류가 발생했습니다. C:\Program Files\Microsoft Visual Studio\2022\Community\MSBuild\Microsoft\VC\v170\Microsoft.CppCommon.targets(247,5): error MSB8066: 'C:\Users\tnqls\OneDrive\���� ȭ��\ff\hello_f\build\windows\CMakeFiles\17bcc7b3690274761bc31777eb11dab3\flutter_windows.dll.rule;C:\Users\tnqls\OneDrive\���� ȭ��\ff\hello_f\build\windows\CMakeFiles\e86d85ec92b8cca453a41bad4e8ed811\flutter_assemble.rule;C:\Users\tnqls\OneDrive\���� ȭ��\ff\hello_f\windows\flutter\CMakeLists.txt'�� ���� ����� ���� ���尡 ����Ǿ����ϴ�(�ڵ� 1). [C:\Users\tnqls\OneDrive\���� ȭ��\ff\hello_f\build\windows\flutter\flutter_assemble.vcxproj] Exception: Build process failed. 이후 프로젝트의 안드로이드 파일에 에러표시가 떠 cmd에 flutter doctor를 실행한 결과 Doctor summary (to see all details, run flutter doctor -v): [√] Flutter (Channel stable, 3.10.6, on Microsoft Windows [Version 10.0.22621.1992], locale ko-KR) [√] Windows Version (Installed version of Windows is version 10 or higher) [!] Android toolchain - develop for Android devices (Android SDK version 34.0.0) X cmdline-tools component is missing Run path/to/sdkmanager --install "cmdline-tools;latest" See https://developer.android.com/studio/command-line for more details. X Android license status unknown. Run flutter doctor --android-licenses to accept the SDK licenses. See https://flutter.dev/docs/get-started/install/windows#android-setup for more details. [√] Chrome - develop for the web [√] Visual Studio - develop for Windows (Visual Studio Community 2022 17.5.4) [√] Android Studio (version 2022.2) [√] VS Code (version 1.80.1) [√] Connected device (3 available) [√] Network resources ! Doctor found issues in 1 category. 하나의 오류가 있는듯 한데 현재 안드로이드 스튜디오로 다른 앱 개발 활동을 하고있는것이 혹시 연관이 있을까요? 해결방안을 모르겠어서 질문 남깁니다. 도와주세요..
[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!
GoRouter 적용하는 강의 후 처음 splash screen으로 진입 후 getMe함수를 통해 state가 null이 되는 로직을 통과했음에도 router의 redirect를 따르지 않고 계속해서 splash screen에서 머무는 모습이 나타납니다. print로 결과를 확인해보니 처음 redirect 로직을 검증할 때 UserModelLoading의 Instance로 나타나고 이후 getMe를 통해 null이 되더라도 새롭게 redirection이 일어나지 않는 것 같습니다. 고민하다가 해결책이 떠오르지 않아 문의남깁니다!
[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!
border: baseBorder 로 설정했을때 color 를 Colors.red 로 해놔도 아무 변화가 없습니다. enabledBorder: baseBorder 설정했을때 그제서야 빨간색이 적용됩니다. focusedBorder 는 커서가 있을때 border 의 형태로 이해가 되었는데 일반 border 와 enabledBorder 속성은 어떤차이가 있는걸까요? border 속성만 사용할때는 아무 변화가 없는 이유도 궁굼합니다.
[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
안녕하세요, Flutter에 익숙해지기 위해 해당 강의를 보며 샘플 코드(?)와 비슷하게 코드를 추가하고 hot reload 버튼을 눌렀습니다. 그러자 IOS simulator(iPhone 14 Pro Max)에서 "Lookup failed: title in @getters in MyHomePage in package:hello_world/main.dart" 에러가 발생하여 추가 한 코드가 정상동작을 하는지, 수정해야 하는 부분이 있는지 확인이 불가능하게 되었습니다. 혹시 제가 추가한 코드에서 문제가 될 만한 부분이 있을까요? 제가 추가한 코드와 IOS simulator 에러 화면 첨부드립니다.
[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!
안녕하세요. 실험적으로 Code Generator 기능을 이용해서 프로바이더를 다시 작성해보고 있습니다. 궁금한 게 Section 9. 다섯 번째 강의를 보는데, 1분 대에 나오는 RestaurantStateNotifier와 StateNotifierProvider를 어떻게 CodeGenerator를 이용해서 고칠 수 있을까 고민 중입니다. 시도한 코드는 아래와 같은데요(import는 생략했습니다): part 'restaurant_provider.g.dart'; @Riverpod(keepAlive: true) class Restaurant extends _$Restaurant { final RestaurantRepository repository; Restaurant({ required this.repository, }) { paginate(); } // 초기 상태는 Loading 상태로 @override CursorPaginationBase build() { return CursorPaginationLoading(); } paginate() async { final response = await repository.paginate(); state = response; } } 코드 제너레이션은 잘 되는데, 문제는 이를 실행시키려고 하니 다음과 같은 에러가 뜹니다. Launching lib/main.dart on iPhone 14 Pro Max in debug mode... main.dart:1 Xcode build done. 3.9s Failed to build iOS app Error (Xcode): lib/restaurant/provider/restaurant_provider.g.dart:15:3: Error: The argument type 'Restaurant Function({RestaurantRepository repository})' can't be assigned to the parameter type 'Restaurant Function()' because 'Restaurant Function({RestaurantRepository repository})' is nullable and 'Restaurant Function()' isn't. restaurant_provider.g.dart:15 Could not build the application for the simulator. Error launching application on iPhone 14 Pro Max. Exited 이전까지는 잘 됐었는데, 바로 직전 강의에서 CursorPaginationBase를 만들고, 이를 상속받는 CursorPagination 상태들을 구현하고 나서부터, 문제가 발생한 것 같습니다. 아마 CursorPagination의 경우는 data와 meta라는 필드가 들어가는데, 어디선가 Code generation에 문제가 생겨서, CursorPaginationBase가 아닌, data와 Meta를 필요로 하는 생성자가 호출된 건 아닌가 의심하는 중입니다. 아래는 위 코드로 생성된 .g.dart 파일입니다. // GENERATED CODE - DO NOT MODIFY BY HAND part of 'restaurant_provider.dart'; // ************************************************************************** // RiverpodGenerator // ************************************************************************** String _$restaurantHash() => r'50915edab0a63433f5d54b932240cf504147e391'; /// See also [Restaurant]. @ProviderFor(Restaurant) final restaurantProvider = NotifierProvider<Restaurant, CursorPaginationBase>.internal( Restaurant.new, name: r'restaurantProvider', debugGetCreateSourceHash: const bool.fromEnvironment('dart.vm.product') ? null : _$restaurantHash, dependencies: null, allTransitiveDependencies: null, ); typedef _$Restaurant = Notifier<CursorPaginationBase>; // ignore_for_file: unnecessary_raw_strings, subtype_of_sealed_class, invalid_use_of_internal_member, do_not_use_environment, prefer_const_constructors, public_member_api_docs, avoid_private_typedef_functions 어떻게 하면 Code Generator를 이용해서 문제를 해결할 수 있을까요?