Memo/Dart & Flutter
-
[Flutter] json 데이터 한글 깨짐 현상. 해결 방법Memo/Dart & Flutter 2024. 2. 22. 22:23
⚠️ 문제 json 데이터를 가져와 출력하는 과정에서 사진과 같이 글자가 깨지는 현상이 발생하였다. 💡 원인 json을 디코딩하는 과정에서 EUC-KR 데이터를 유니코드 기반으로 잘못 해석하여 발생한 문제로 보인다. ✅ 해결 데이터를 UTF-8 방식으로 디코딩하여 해결할 수 있었다. jsonDecode(response.body); // 기존 코드 // to jsonDecode(utf8.decode(response.bodyBytes)); // 개선 코드 🔗 참고 자료 [flutter] 24... jsonDecode(한글깨짐 현상) 마침 지금 공부하는 부분과 프로젝트 부분이 흡사하여 내가 맟은 영역은 아니지만 구현해보았다. 배운거를 복습한다는 느낌으로 따라해보니 스무스하게 잘됐다. 코드에 오류없어 에뮬을 돌..
-
[Firebase] android, plugins {} block 에러 해결Memo/Dart & Flutter 2024. 2. 12. 14:39
⚠️ 문제 Android 앱에 Firebase SDK를 추가하는 과정에서 아래와 같은 에러가 발생하였다. FAILURE: Build failed with an exception. ... See https://docs.gradle.org/7.5/userguide/plugins.html#sec:plugins_block for information on the plugins {} block @ line 33, column 1. plugins { ^ 1 error 💡 원인 Firebase에서 시킨대로 프로젝트 수준의 'build.gradle' 파일에 플러그인을 등록한 것이 문제였다. (Firebase에서 잘못 적어놓은 듯하다..) ✅ 해결 plugins 항목을 'build.gradle'이 아닌, 'setting..
-
[Flutter] PlatformException(null-error, Host platform returned null value for non-null return value., null, null). 에러 해결Memo/Dart & Flutter 2024. 2. 5. 13:22
- 24.02.12. 본 문제는 잘못된 경로에 Firebase SDK 플러그인을 추가하여 발생하는 에러와 관련이 있습니다. 'plugins {} blocks' 에러가 발생하는 경우, google-services를 classpath로 변경하여 적용하지 마시고 아래 게시물을 참조하시기 바랍니다. https://l22hs.tistory.com/59 ⚠️ 문제 Firebase를 연동하기 위해 작성한 main 메소드의 'await Firebase.initializeApp()' 메소드를 실행하는 과정에서 아래와 같은 에러와 함께 애뮬레이터에서는 플러터 로고만 출력되고 앱이 실행되지 않았다. [ERROR:flutter/runtime/dart_vm_initializer.cc(41)] Unhandled Exception..
-
[Flutter] App requires Multidex support. 에러 해결Memo/Dart & Flutter 2024. 2. 4. 17:49
⚠️ 문제 'cloud_firestore' 패키지를 설치하고 Flutter와 Firebase를 연동하는 과정에서 아래와 같은 에러가 발생하였다. FAILURE: Build failed with an exception. ... [!] App requires Multidex support ... cannot prompt without a terminal ui Exception: Gradle task assembleDebug failed with exit code 1 💡원인 Firebase와 연동하는 과정에서 많은 메서드가 사용되어 발생한 원인으로 생각된다. 안드로이드 공식 문서에서는 메서드가 64K개를 초과하면 멀티덱스 이용이 필요하다고 한다. ✅ 해결 아래와 같이 프로젝트에서 멀티덱스를 활성화하여 해결할 ..
-
[Flutter] Your project requires a newer version of the Kotlin Gradle plugin. 에러 해결Memo/Dart & Flutter 2024. 2. 4. 17:30
⚠️ 문제 Flutter와 Firebase를 연동하는 과정에서 아래와 같은 에러가 발생하였다. FAILURE: Build failed with an exception. ... [!] Your project requires a newer version of the Kotlin Gradle plugin. ... Exception: Gradle task assembleDebug failed with exit code 1 💡원인 프로젝트 수준의 build.gradle에 kotlin 구버전이 적용되어 있어 발생한 오류이었다. ✅ 해결 단순히 kotlin의 버전을 최신 버전으로 고쳐 해결할 수 있었다. kotlin 최신 버전은 아래 페이지에서 확인할 수 있다. Kotlin releases | Kotlin kotli..
-
[Flutter] SnackBar와 Toast 차이점Memo/Dart & Flutter 2024. 1. 15. 17:07
🟰 공통점 간단한 메시지를 표시하는 기능 ✅ SnackBar 스와이프로 제거 가능 사용자 입력 처리 가능 (예, undo) 사용자에게 경고 형식의 메시지를 전달하기에 적합 ✅ Toast 스와이프로 제거 불가 사용자 입력 처리 불가 사용자에게 정보성 메시지 전달하기에 적합 ⭐ 단순한 정보 전달은 Toast, 상호작용이 필요하다면 SnackBar 이용 Android - Snackbar vs Toast - usage and difference We have been using just Toasts in our application so far and as we are planning to adopt some new features from Support Design Library I am wondering w..
-
[Flutter] AppBar 배경 색상 사라짐, 색깔 지정 방법Memo/Dart & Flutter 2024. 1. 10. 22:57
분명 Flutter 공부를 시작하면서 작성했던 코드와 동일한 코드인데, 갑자기 AppBar의 색상이 적용되지 않았다. 무엇이 문제일까 고민하던 중, 최근 Flutter를 3.16.5 버전으로 업데이트 한 것이 생각났다. 공식 문서를 찾아본 결과 Flutter 최신 버전 부터 변경되는 일부 사항이 존재했다. 위와 같이 Flutter 3.16 버전 이후 부터는 기본적으로 Material 3 디자인이 적용 된다. 이 때문에 기존 기본으로 적용되던 파란색의 AppBar 배경색이 사라진 것이었다. 따라서 Material 3 부터는 AppBar에 색상을 넣고 싶다면, 아래와 같이 AppBar 위젯에서 색상을 별도로 지정해 주어야 한다. AppBar( backgroundColor: Colors.blue, // 배경색..
-
[Flutter] Stateless Widget과 Stateful WidgetMemo/Dart & Flutter 2024. 1. 9. 18:27
✅ Stateless Widget (SLW) 변화가 없는 정적인 위젯 build 메서드를 통해 단지 UI를 출력하는 역할 build 메서드가 한 번 수행되면 다시는 호출되지 않음 내용을 갱신할 수 없는 위젯으로 생명주기가 없음 State가 변하지 않는 위젯 ✅ Stateful Widget (SFW) 움직임이나 변화가 있는 위젯 두 클래스(Stateful Widget + State)의 결합으로 이루어져 있음 SLW와 다르게 State 클래스를 별도로 구성하여 사용 UI 변경(내용 갱신)을 위해 'setState' 메서드를 사용 생명주기를 10단계로 구분 ❔ SFW은 왜 두 개의 클래스로 나뉘어 있을까 SFW은 'Widget' 클래스를 상속 받는다. 'Widget' 클래스 기본적으로 immutable(불변)..