본문 바로가기

반응형

Flutter-플러터/플러터 공부

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 내용을 보니 안드로이드만 앱 외부 저장이 가능하더군요. 그.. 더보기
flutter build 패키지 이름 변경 - 안드로이드, IOS 공통 Flutter 코드를 짜고 스토어에 배포하려는 순간 Flutter 개발자는 안드로이드 개발자, IOS 개발자가 되야 합니다. 구글플레이, 앱스토어에서 앱을 출시 할 때 정책이 다르기 때문에 빌드시에 이 부분을 잘 신경써야 합니다. 처음 올린앱 부까를 배포할 때는...진짜 3일 넘게 걸렸는데.. 그래도 한 번 해봤다고 하루 만에 슥슥 하게 되네요. 기존에 앱을 배포 할 때 com.example.머시기거시기 가 되었던 것 같은데 구글 플레이에 올리려니 com.example은 막혀있네요 ^^'' 해서 이번에는 안드로이드, IOS 패키지이름을 쏵다 바꿔주는 패키지를 사용했습니다. https://pub.dev/packages/change_app_package_name change_app_package_name |.. 더보기
Getx - table_calendar 사용시 유의사항 Getx 사용시 table_calendar 패키지를 사용할 때 유의사항이 있습니다. table_calendar 패키지는 obx가 먹지를 않습니다........ Getbuilder를 사용하셔야 합니다. 제가 구현하고자 했던 기능은 다음과 같습니다. 달력 페이지에 해당 날짜를 클릭하면 showModalBottomSheet 가 열림 매월 기록하면 매월 성장 텍스트를 클릭하면 데이터를 추가하는 페이지로 넘어감 여기에 입력한 데이터가 달력에서 바로 보여지기 위해서 Obx를 사용해봤습니다. 오류를 뱉어냈습니다. 그래서 제가 다음과 같은 뻘짓을 했습니다. 1. 저장하기 버튼을 누를 때 Get.back()이 아닌 Get.toNamed 사용 --> 이러면 새로운 페이지가 생성되면서 화면 위쪽에 뒤로가기 X 버튼이 생김 .. 더보기

반응형