본문 바로가기

Front-End/Flutter

[Flutter] [Windows] Flutter failed to write to a file at "C:\Users\<사용자명>\StudioProjects\<프로젝트명>\.flutter-plugins". The flutter tool cannot access the file or directory. 오늘은 아주 간단하지만 골때리는 트러블슈팅을 가져왔다. 바로 제목처럼 파일 권한 문제인데, 나같은 경우 Mac에선 괜찮다가 윈도우10에서 발생했다. MacOS나 Linux 라면 바로 chmod를 할텐데, 윈도라서 그것도 못하고... 폴더/파일 속성 들어가서 권한 확인해볼수야 있겠지만 대부분 원인은 거기에 있지 않다. 진짜 원인은 윈도우 디펜더 실시간 감시 때문이다... 실시간 감시를 끄고 flutter clean 그리고 dart pub get 한 후 실행하면 잘 되는 것을 확인할 수 있다... [실시간 감시 끄는법] 설정 - Windows 보안 - 바이러스 및 위협 방지 - 바이러스 및 위협 방지 설정 (설정 관리) - 실시간 보호 (끔으로 설정) 끝~! 더보기
[Flutter] Android Studio Ladybug에서 발생한 JDK Version 오류 회사에서 새로 지급받은 데스크톱에 플러터 세팅을 마치고, (flutter doctor -v까지 이상 없었음) 기존에 작업중이던 앱을 실행했는데 다음과 같은 에러가 발생했다.Execution failed for task ':connectivity_plus:compileDebugJavaWithJavac'. Could not resolve all files for configuration ':connectivity_plus:androidJdkImage'. > Failed to transform core-for-system-modules.jar to match attributes {artifactType=_internal_android_jdk_image, org.gradle.libraryelements=jar,.. 더보기
[Flutter] GoRouter 사용시 PopScope 적용 안되는 버그 플러터로 안드로이드의 App Link, ios의 Universal Link를 사용해서 링크 접속시 앱을 여는 기능을 구현중인데, 기존에 PopScope를 이용해서 구현해둔 "뒤로가기 두번으로 종료" 기능이 안되는 현상을 발견했다. 분석해본 결과, root 화면에서만 안되는것을 알 수 있었고, 인터넷 검색 결과, 13+ 버전의 GoRouter에서 발생하는 이슈였다. https://github.com/flutter/flutter/issues/140869 [go_router] WillPopScope/PopScope doesn't trigger with back button navigation on root screens · Issue #140869 · flutter/flutteSteps to reproduce.. 더보기
[Flutter] Flutter Module was compiled with an incompatible version of Kotlin. The binary version of its metadata is 1.8.0, expected version is 1.6.0 [주의] 해당 문제는 아직 미해결되었습니다. 해결되는대로 글 수정하겠습니다. 평화롭던 어느날 디버그 모드 빌드중에 이런 경고가 떴다. 코틀린 버전이 안맞아서 생기는 경고,, 딱히 손 안대도 빌드는 됐지만 빨간 글씨가 맘에 걸려 손을 댔다가 재앙이 시작됐다. 1. 인터넷에서 본대로 build.gradle 과 settings.gradle 수정 후 다시 빌드해봐도 계속해서 뜨길래, 지피티 쌤한테 여쭈어보니, 2. gradle-wrapper.properties 에 있는 gradle 버전도 맞춰준 다음 flutter clean./gradlew cleanflutter pub get을 하라신다.. 3. gradle 버전을 코틀린 버전에 맞춰 설정했는데 ./gradlew clean 과정에서 자바가 없다고 설치하라고 하.. 더보기
[Flutter] 소셜 로그인 구현 (카카오톡) 필요한 링크들을 모아두었다.- 카카오 로그인 API 공식 문서https://developers.kakao.com/docs/latest/ko/kakaologin/flutter Kakao Developers카카오 API를 활용하여 다양한 어플리케이션을 개발해보세요. 카카오 로그인, 메시지 보내기, 친구 API, 인공지능 API 등을 제공합니다.developers.kakao.com웹은 빼고 개발 중이었으니 빨간 박스 친 부분만 참고해 구현하였다.  ✓ 패키지 의존성 설치는 쉬우니 스킵. ✓ 커스텀 URL 스킴 설정 방법해당 설정을 해두면 사용자가 Android와 iOS 환경에서 카카오톡으로 로그인 후 서비스 앱으로 돌아오거나, 카카오톡 메시지 버튼 또는 링크로 서비스의 앱을 실행할 수 있다.https://de.. 더보기
[Flutter] 11. 드롭다운 메뉴 드롭다운 메뉴란 눌렀을때 펼쳐지면서 아래로 선택가능한 목록이 생기는 위젯을 말함. DropdownButton이라는 위젯과 공식문서가 있긴하지만 디자인이 고정되어 있어서 OverlayEntry로 직접 만들어쓰는게 좋음. 친절하신 분 : https://velog.io/@cyb9701/Flutter-OverlayEntry%EB%A1%9C-Dropdown-%EC%A7%81%EC%A0%91-%EB%A7%8C%EB%93%A4%EA%B8%B0 [Flutter] OverlayEntry로 Dropdown 직접 만들기 Dropdown Button Dropdown 버튼은 활성화했을때, 하위 목록들을 보여주는 버튼이다. Flutter에서도 기본적으로 제공하는 Dropdown Button 위젯이 있다. > DropdownBut.. 더보기
[Flutter] 10. 토스트, 스낵바 플러터에서는 잠시 생겼다가 사라지는 알림으로 Toast와 Snackbar를 사용할 수 있음. 1. Toast 토스트는 다음과 같이 하단에 잠시 떴다가 사라지는 알림을 의미함. 토스트의 모양이나 내용은 물론, 위치나 지속시간 등 커스텀이 가능함. fluttertoast라는 패키지를 사용함. 공식 문서 : https://pub.dev/packages/fluttertoast fluttertoast | Flutter package Toast Library for Flutter, Easily create toast messages in single line of code pub.dev 2. Snackbar 스낵바는 토스트처럼 잠시 생겼다가 사라지는 알림인건 동일하지만 최하단에서 슥 올라왔다가 슥 내려간다는 점, .. 더보기
[Flutter] 09. 카메라 카메라는 camera 패키지를 임포트해야 함. 추가로, OS별로 다음과 같은 추가 작업을 해주어야 사용이 가능함. 예시 코드는 다음과 같음. import 'dart:io'; import 'dart:math' as math; import 'dart:typed_data'; import 'package:camera/camera.dart'; import 'package:flutter/material.dart'; import 'package:get/get.dart'; import 'package:path/path.dart'; import 'package:path_provider/path_provider.dart'; import 'package:http/http.dart' as http; import '../mai.. 더보기