본문 바로가기

반응형

Flutter-플러터

Flutter bloc 공부 3 - Todo 앱 버튼을 3개를 만들고, 1개의 버튼을 눌렀을 때만 색이 바뀌는 기능 먼저. enum Filter { all, active, completed } TodoFilterSate enum의 Filter를 인자로 받는다. factory 코드로 초기값을 만든다. // ignore_for_file: public_member_api_docs, sort_constructors_first part of 'todo_filter_cubit.dart'; //todoFilter상태의 값을 확인 할 수 있는 State class TodoFilterState extends Equatable { final Filter filter; TodoFilterState({ required this.filter, }); //TodoFilterS.. 더보기
Flutter Bloc 공부 2 Todo 어플 만들기 Flutter Bloc 로 Todo 어플 만들기 1. state는 atomic 하게 만들기 2. state는 별도의 클래스로 3. copyWith 함수로 항상 새로운 상태를 만들기 4. Equtable을 사용해서 해당 클래스가 서로 같은지 비교하게 하기 Todo 모델입니다. uuid 를 만들어서 할일이 생성 될 때마다 고유의 id값을 만들어줍니다. Filter는 지금 할일이 해야 하는 할일인지, 끝난일인지, 모든 값인지 보여줍니다. Equtable 패키지를 이용해서 앞으로 Todo의 클래스와 이후 Cubit안에 쓰여질 클래스의 값이 일치하는지 도와줍니다. import 'package:equatable/equatable.dart'; import 'package:uuid/uuid.dart'; // Impor.. 더보기
Flutter - 가계부 월 고정 지출 반복적으로 입력 구현 문제 해결 목적 가계부를 사용하면 반복적으로 사용 되는 지출들이 있습니다. 월세, 통신, 렌탈 등등 이러한 지출들을 매달 같은 날짜에 입력하는 건 번거로운 일입니다. 그래서 이 기능을 구현했습니다. 문제 해결 과정 1. Timer Flutter에는 Timer 클래스가 있습니다. 시간을 측정해서 원하는 시간에, 또는 특정 시간동안 반복적인 작업을 가능하게 하는 클래스입니다. 문제는 앱이 작동 중일 때만 시간이 흐르고 , 또 단기적인 시간은 정확하지만, 하루, 또는 일주일이 넘어가는 시간은 정확하지 않은 이슈가 있습니다. 그래서 사용하지 않기로 했습니다. 2. Work manager https://aakashpp.medium.com/running-background-tasks-in-flutter-with-w.. 더보기
Flutter 앱 버전 체크해서 알람 만들기 문제 해결 목적 앱 업데이트 완료 후 유저들에게 현재 기기의 버전과, 스토어에 있는 버전을 체크 후 알람띄우기 문제 해결 과정 https://pub.dev/packages/app_version_update/example app_version_update example | Flutter package An easy and quick way to check if the local app is updated with the same version in their respective stores (Play Store / Apple Store ). pub.dev 위 패키지를 사용했습니다. 같은 기능의 다른 패키지도 있지만 패키지 버전 관리가 꾸준 한 것 같아 안정성을 위해 사용했습니다. 사용법은 간단합니다. 첫 .. 더보기
Flutter - supabase를 활용한 가계부 백업 기능 구현 문제 해결 목적 supabase storage를 활용한 가계부 sqlite db 파일 백업 기능 구현 문제 해결 과정 2024.02.09 - [Flutter-플러터/플러터 공부] - 7external_path 패키지, 결국 supabase 7external_path 패키지, 결국 supabase https://pub.dev/packages/external_path external_path | Flutter package A flutter plugin to get internal, external storage and external public directory path. pub.dev 문제 해결 목적 백업 서비스를 구현 중 입니다. 원래계획은 앱 외부 ownerdev88.tistory.com 원래 목표.. 더보기
Flutter supabase Apple login 구현 문제 해결 목적 supabase Apple 로그인 구현하기 문제 해결 과정 1. 애플 개발자 계정 등록하기 - 애플 개발자 계정을 등록 후 로그인 토큰을 받기 위해 개발자 설정을 진행합니다. - 해당 프로젝트 xcode로 들어가서 sigin with Apple 등록합니다. https://nuridal-class.tistory.com/entry/Flutter-Apple-%EA%B0%9C%EB%B0%9C%EC%9E%90-%EC%84%A4%EC%A0%95%ED%95%98%EA%B8%B0 [Flutter] Apple 개발자 설정하기 Apple 개발자 설정하기 아이폰에 개발자가 개발한 어플을 업로드하려면 apple 개발자 설정을 해야 하는데 이때 예시로 apple login을 하기 위한 세팅을 어떻게 해야 하는지.. 더보기
7external_path 패키지, 결국 supabase https://pub.dev/packages/external_path external_path | Flutter package A flutter plugin to get internal, external storage and external public directory path. pub.dev 문제 해결 목적 백업 서비스를 구현 중 입니다. 원래계획은 앱 외부의 저장소에 db 파일을 보관하려고 했지만 플랫폼 별 문제로 supabase storage 서비스로 가기로 결정했습니다. 문제 해결 과정 기존에 path_provider를 사용하면서 앱 내의 저장소 말고 앱 외부의 저장소를 이용해서 db 파일을 저장하고 싶었습니다. path_provider 내용을 보니 안드로이드만 앱 외부 저장이 가능하더군요. 그.. 더보기
path_provider , path 패키지를 이용해서 sqlite 백업 지금 만들고 있는 가계부 앱에는 백업 기능이 없습니다. 해서 앱내의 sqlite 파일을 기기내로 옮겨서 백업 기능을 구현 중입니다. 처음 해보는 기능이라 개념이 잘 안잡혀서 이리저리 헤매고 있네요.. 그래서 이럴 땐 가장 작은 개념부터 공부하는게 좋은 것 같습니다. path_provider, path 패키지는 앱을 만들 때 무조건 써야 하는 패키지 중 하나 인 것 같습니다. 기기 내부의 데이터 위치와 여러 편의 기능을 제공 해줍니다. path_provider 애플리케이션 문서 디렉터리 액세스: getApplicationDocumentsDirectory() 함수를 사용하여 앱의 문서 디렉터리 경로에 액세스할 수 있습니다. 이 디렉터리에는 앱에서 생성된 사용자 데이터 및 파일이 포함됩니다. 예를 들어 데이터.. 더보기

반응형