Flutter(플러터) 28

[Flutter/플러터] Firebase Messaging onMessage 에서 SharedPreferences 값 변경하는 방법

Firebase Messaging 사용 시 푸시를 받았을 때 SharedPreferences 의 특정 값을 변경해줘야하는 경우가 생길 수 있는데요. 이 경우에 그냥 final sp = SharedPreferences.getInstance(); await sp.then(value) { value.setInt('temp', 0); }; 이런 식으로 변경 후 가져와서 값을 확인하면 값이 변경되지 않습니다. 앱을 재실행해야 변경됩니다. 바로 변경된 값을 반영하려면 final sp = SharedPreferences.getInstance(); await sp.then(value) { value.setInt('temp', 0); }; 값을 가져오기 전에 await sp.reload(); 가 필요합니다. 아래와 같이..

Flutter(플러터) 2024.01.03

[Flutter/플러터] 플러터로 만든 앱 [감정저장소] 당신의 오늘 감정을 기록해보세요.

플러터로 개발한 앱 홍보입니다. 감정 조약돌을 추가해 기록하는 데일리 일기장 앱입니다. 개발자가 기획/디자인/개발 모두해서 부족한 부분이 많습니다. https://apps.apple.com/kr/app/%EA%B0%90%EC%A0%95%EC%A0%80%EC%9E%A5%EC%86%8C/id6472668660 현재 iOS만 배포되어 있습니다.AOS 는 테스터 20명을 모집하지 못해서 아직 내부테스트에서 묶여있습니다 ㅎㅎ아이폰 쓰시는 분들은 설치해서 사용 후 피드백주시면 감사드리겠습니다. 더불어 AOS 내부테스트 해주실 수 있는 분들 댓글으로 메일주소 알려주시면 내부테스트 초대하겠습니다.감사합니다! ‎감정저장소 ‎감정저장소는 다음과 같은 기능을 제공합니다. # 당신의 감정을 시각화해서 저장하는 모먼트 감정을 ..

Flutter(플러터) 2023.11.22

[플러터/Flutter] ios 17, iphone 15 Unable to load contents of file list: '/Target Support Files/Pods-Runner/Pods-Runner-frameworks-Debug-input-files.xcfilelist' 에러 해결방법

xcode 가 버전이 올라가면서 Unable to load contents of file list: '/Target Support Files/Pods-Runner/Pods-Runner-frameworks-Debug-input-files.xcfilelist' DT_TOOLCHAIN_DIR cannot be used to evaluate LIBRARY_SEARCH_PATHS, use TOOLCHAIN_DIR instead 요런 에러가 발생하는데요. 해결방법은 간단합니다. 먼저 플러터 프로젝트의 터미널에서 cd ios 로 /ios 폴더로 이동합니다. 아래 명령어들을 순서대로 수행합니다. sudo gem update cocoapods --pre pod udpate pod --version // 버전이 1.12...

Flutter(플러터) 2023.10.27

[플러터/Flutter] retrofit @GET 사용 시 url 에 ? 가 들어가는 경우 ? 인식 안될 때 해결방법

GET : @GET 사용 시 url 에 ? 가 들어가는 경우 @FromUrlEncoded 어노테이션 사용해야함. 예시 @RestApi(baseUrl: '') abstract class AdminHomeUserlistDataSource { factory AdminHomeUserlistDataSource(Dio dio, {String baseUrl}) = _AdminHomeUserlistDataSource; @FormUrlEncoded() @GET('/posts?_page={pageKey}&_limit={limit}') Future getPosts( @Path('pageKey') int pageKey, @Path('limit') int limit); }

Flutter(플러터) 2023.09.27

[플러터/Flutter] Phone, Tablet, Desktop 코드로 구분하기

방법 1. class FormFactor { static double desktop = 900; static double tablet = 600; static double handset = 300; } ScreenType getFormFactor(BuildContext context) { // Use .shortestSide to detect device type regardless of orientation double deviceWidth = MediaQuery.of(context).size.shortestSide; if (deviceWidth > FormFactor.desktop) return ScreenType.Desktop; if (deviceWidth > FormFactor.tablet) re..

Flutter(플러터) 2023.06.22

[플러터/Flutter] Flutter Web Error: Unsupported operation: Platform._operatingSystem 발생 해결 방법

Flutter Web Run할 때는 Platfrom.isAndroid 같은 플랫폼 관련 값들을 사용하면 안된다고 합니다. 저의 경우 먼저 안드로이드/iOS 를 개발하고 추가로 웹을 더해보는 작업 중 Error: Unsupported operation: Platform._operatingSystem가 발생했는데요. if (Platform.isAndroid || Platform.isIOS) { await SystemChrome.setPreferredOrientations([ DeviceOrientation.landscapeLeft, DeviceOrientation.landscapeRight, ]); } 가로 모드 고정 하는 코드에서 플랫폼 관련 값을 사용해서 발생한 문제였습니다. 해결책은 간단한데 기본으로 ..

Flutter(플러터) 2023.06.16