[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!
안녕하세요! 코드팩토리님 현재 장바구니 관련 강의를 듣고 있습니다만, 「RefreshToken 만료되면 로그아웃」 강의까지가 토큰 처리 관련해서 질문이 있습니다. lib/dio/dio.dart 파일에서 토큰 관련 처리를 하는걸로 알고있습니다. accessToken이 만료되면 onError 메소드가 실행되고 accessToken이 재발급되는 구조로 이해하고 있는데 맞나요..?? 제가 이해하고 있는게 맞는거라면 onError라는 메소드가 실행이 되어야 하는데 onError메소드는 실행이 안되고 401에러(잘못된 토큰입니다.)가 난 상태에서 멈춰버리더라구요.. (vscode로 공부중입니다.) 코드팩토리님의 소스( https://github.com/codefactory-co/flutter-lv2-rest-api )도 받아서 실행해보았습니다만, 저하고 똑같은 에러가 발생되고 앱이 멈췄습니다. onError메소드가 실행이 안되는 이유를 잘모르겠습니다..ㅠ 혹시 몰라 저의 깃허브도 올립니다. (dev브랜치로 봐주시면 감사하겠습니다.) https://github.com/limchangmin95/flutter_delivery/tree/dev
[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 코드팩토리 디스코드 https://bit.ly/3HzRzUM Flutter 강의를 구매하시면 코드팩토리 디스코드 서버 플러터 프리미엄 채널에 들어오실 수 있습니다! 디스코드 서버에 들어오시고 저에게 메세지로 강의를 구매하신 이메일을 보내주시면 프리미엄 채널에 등록해드려요! 프리미엄 채널에 들어오시면 모든 질의응답 최우선으로 답변해드립니다! provider를 사용할 때 ref.read 는 on click 함수처럼 이벤트있는 곳에서 한번만 사용할 때 쓴다고 이해했는데,splashScreen의 checkToken함수 내부에서는 ref.read (secureStorageProvider)로 사용하고restaurantDetailScreen의 getRestaurantDetail 함수 내부에서는 ref.watch (dioProvider)로 사용한 이유가 뭘까요? 그리고 ref.listen은 이것들과 어떻게 다른 상황에서 쓰이는지 헷갈립니다.
[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!
안녕하세요. 강사님 현재 앱 소유권 이전을 준비하고 있습니다. 구글플레이 스토어 앱스토어 이전 A계정에서 소유하고 있던 앱을 B계정으로 이전하려고 합니다. 사유는 회사가 물적분할을 하면서 다른 회사가 되어버리는 상황이 발생하여 앱 소유권 역시 변경을 해야하는 상황입니다. 구글링을 하면서 찾아본 부분으로는 계정의 앱 이동을 무리없이 진행할 수 있을 것 같은데, 문제는 파이어베이스가 걸려있어서 고민을 하고 있는 중입니다ㅠㅠ 질문 A계정에서 B계정으로 앱 소유권을 이전시 파이어베이스도 동일하게 이전이 되는 걸까요? 1번이 아니라면 B에도 A와 동일하게 파이어베이스 프로젝트를 생성 및 데이터 이관을 해야하나요? 기준 정보가 모두 변경될텐데, 앱 내에 B계정 정보와 신규 파이어베이스 정보를 모두 업데이트하야하는거죠? 강의를 들으며, 유지보수는 할 수 있게 되었지만, 해당 부분은 처음이라서ㅠㅠ 경험이 있으신지 문의드립니다. 확인 부탁드립니다.
[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
먼저 코드팩토리 플러터 프로그래밍 2판 출간 축하드립니다. 1판이 워낙 좋아서 2판이 나오는 것이겠지요 ㅎㅎ 질문 드릴 사항은, 제가 작년에 1판 도서와 본 강의도 구매해두었는데요, 작년엔 스터디하지 못하고 올해 들어서 이제 시작 하려고 하는데, 갑자기 도서 2판에 대한 정보를 알게되어서 문의를 드립니다. 2판 도서가 2월1일 출간으로 알고 있는데, 2판 도서가 출간되면 강의의 커리큘럼이나 순서가 2판 기준으로 변경이 되나요? (출간예정도서 목차를 보니 1판하고 좀 다른부분이 있더라구요) 아님 강의가 그대로라면, 1판 도서 또는 2판 도서와의 강의 싱크가 맞지 않을수도 있을것 같아서요 어떻게 준비하면 좋을지, 그냥 1판도서로 쭉 스터디를 해도 괜찮을지, 아님 2월에 2판이 나오면 2판을 구매하여 스터디를 하는게 싱크가 잘 맞을지, (dart나 안드로이드스튜디오 버전도 좀 다를텐데..) 관련해서 조언해주시면 감사하겠습니다!
firebase 관련 패키지 충돌에 관한 주요 공지에서 코드대로 맞춘 다음 flutter pub get을 했는데 firebase_core 의 버전을 업그레이드나 firebase_auth 의 버전을 다운그레이드하라는 메세지가 떴습니다... 알려준대로 다운그레이드하거나 업그레이드 진행해도 될까요?
[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
PopScope로 쓰이는거 같네여 - 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 코드팩토리 디스코드 https://bit.ly/3HzRzUM Flutter 강의를 구매하시면 코드팩토리 디스코드 서버 플러터 프리미엄 채널에 들어오실 수 있습니다! 디스코드 서버에 들어오시고 저에게 메세지로 강의를 구매하신 이메일을 보내주시면 프리미엄 채널에 등록해드려요! 프리미엄 채널에 들어오시면 모든 질의응답 최우선으로 답변해드립니다!
[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 코드팩토리 디스코드 https://bit.ly/3HzRzUM Flutter 강의를 구매하시면 코드팩토리 디스코드 서버 플러터 프리미엄 채널에 들어오실 수 있습니다! 디스코드 서버에 들어오시고 저에게 메세지로 강의를 구매하신 이메일을 보내주시면 프리미엄 채널에 등록해드려요! 프리미엄 채널에 들어오시면 모든 질의응답 최우선으로 답변해드립니다!
개남님 안녕하세요. 두 가지 여쭐 것이 있습니다! 도메인 영역에 entitiy가 아니라 model 폴더를 위치하셨던데, freezed로 생성한 이상 각종 메소드가 들어가기에 "정석적인 속성만 존재하는 entitiy라고 보기엔 조금 그래서 model로 구분하셨구나~"하고 넘어갔습니다. 맞을까요?? 글구 company_listing_entitiy는 data 레이어에 속하는데 왜 entity인지 궁금합니다. 제가 아직 강의 초반이라 이해가 부족한 것인지.. 보통 data 레이어에서 api통신/로컬db와 관련된 비즈니스 로직에 사용할 model을 정의하고, 맵퍼가 도메인의 entity로 반환해 주는 구조로 이해했는데 이러면 CompanyListingEntity가 아니라, CompanyListingModel이 맞지 않나요? 제가 너무 시야를 좁게 보는 것 같기도하고.. 헷갈려 여쭙니다!
[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 코드팩토리 디스코드 https://bit.ly/3HzRzUM Flutter 강의를 구매하시면 코드팩토리 디스코드 서버 플러터 프리미엄 채널에 들어오실 수 있습니다! 디스코드 서버에 들어오시고 저에게 메세지로 강의를 구매하신 이메일을 보내주시면 프리미엄 채널에 등록해드려요! 프리미엄 채널에 들어오시면 모든 질의응답 최우선으로 답변해드립니다! 플러터 시뮬레이터로 로그인을 시도하는데 아래와 같은 오류가 나요..[VERBOSE-2:dart_vm_ initializer.cc (41)] Unhandled Exception: DioException [connection error]: The connection errored: Connection refused This indicates an error which most likely cannot be solved by the library. Error: SocketException: Connection refused (OS Error: Connection refused, errno = 61), address = 127.0.0.1, port = 534693000번 포트가 아니라 53469로 사용하고 있어서 나는 오류인 것은 알겠는데,어떻게 시뮬레이터를 3000번 포트에서 실행할 수 있을지 모르겠어요.
댓글 불러오는 과정을 보고 있는데, 지금까지 각 모델(feed, comment) 전부 Firebase에서 전체 document 받아와서 list로 변환 후, update 하고나면 Firebase에 업로드하는데 그와 동시에 screen에 반영하기 위해 새로 get하여 list를 만들어서 표시해주는 것 같습니다. Firebase StreamBuilder를 사용하면 실시간으로 모든 변화들이 바로 업데이트 되어서 기존에 많이 썼는데, 혹시 이렇게 하지 않는 이유가 있을까요? (데이터 통신이 불필요하게 많이 일어나서 트래픽/요금 등의 문제가 있다든지 하는 현실적인 이유가 있는지 궁금했습니다)