플러터:실행
둘러보기로 이동
검색으로 이동
개요[편집 | 원본 편집]
개발 중 화면을 파악하기 위하여.
| 과정 | 설명 | 비고 |
|---|---|---|
| 개발환경 준비 | 안드로이드, ios 등 해당 개발환경에 대해 배포하기 위한 사전작업이 되어 있는지 확인.
각 개발환경에 대한 준비 여부를 진단한다. |
flutter doctor |
| 확인(선택사항) |
|
flutter devices |
| 실행 | window, 연결된 장 등 해당 환경에서의 앱을 실행해본다. | flutter run -d 디바이스명
vscode의 경우, 우측 하단에서 디바이스를 설정하고(에뮬레이터를 켜고) flutter run 만으로 가능. |
실제 기기를 활용한 실행[편집 | 원본 편집]
안드로이드[편집 | 원본 편집]
실제 휴대폰이 에뮬레이터보다 빠르고 안정적임.
| 과정 | 설명 | 비고 | ||||
|---|---|---|---|---|---|---|
| 디버깅 모드 활성화 | 핸드폰 설정
USB 케이블로 연결:
|
파일전송이 가능한 USB로 연결해야 함. | ||||
| Google USB Driver 설치 | 안드로이드스튜디오 > Tools > SDK Manager > Languages&Frameworks > Android SDK > SDK Tools > Google USB Driver
|
|||||
| 자바 JDK 설치 |
|
|||||
| 연결 및 확인 |
|
|||||
| 자바 설치 |
|
|||||
| 실행 | flutter run에서 디바이스 선택. | VSCode라면 하단바에 선택 가능. 상당히 느리다. 앱을 빌드해서 실행하는 것 같은 느낌. 핫 리로드 됨. 디버그모드는 핫 리로드를 위한 메타데이터 때문에 오히려 실제 빌드보다 더 느리다. 빌드 캐시를 지우는 게 두려워질 정도로;; 간단한 마이크 테스트용 올려봤는데, 그래들 task만 160초, 빌드.. 디버그 팩 설치하는 데만도 한참 걸린다;; 연결을 끊어도 앱이 설치되어 있어, 앱을 계속 쓸 수 있음. |
iOS[편집 | 원본 편집]
실행 이후 개발[편집 | 원본 편집]
핫 리로드[편집 | 원본 편집]
파일을 저장하면 실행 화면에 실시간으로 저장 내용이 반영된다.
애석하게도, 원드라이브 등 프로젝트가 특수한 디렉토리 안에 있으면 파일이 잠겨서 핫 리로드가 안된다.(옛날엔 한글 디렉토리에 있으면 실행조차 안되었는데, 어느 순간 해결되었다.)
문제 발생[편집 | 원본 편집]
여러 에뮬레이터로 개발을 하는 상황에서 Gradle 캐시 잠금 문제가 발생한다. 원인으로는 다음과 같은 것들이 생각된다.
Gradle 캐시 잠금 문제[편집 | 원본 편집]
| 원인 | 설명 | 비고 |
|---|---|---|
| 한글 경로가 포함됨. | (사용자명이 한글인 경우. 어쩔 수가 없는;;): 파워쉘에서 setx GRADLE_USER_HOME "D:\FlutterGradleCache" 형식으로 경로를 바꾸어준다. | |
| 회사망이라 SSL 인증서 문제로 제대로 된 Gradle 다운로드가 안됨. |
|
|
| 플러터와 Gradle 버전이 안맞음. | 이건... 코파일럿도 잘 안알려주는 문제였다; 버전에 대한 질문을 해보길. | 보통 코파일럿 등은 코드만 살펴주지, 이런 문제는 상정 외... |
| 보안 프로그램 | 보안 프로그램이 스캔하면서 잠가버리면 답 없....
프로젝트가 원드라이브 안에 있어도 이유를 모르겠지만 감궈버림... |
학교에서 개발할 때......정말 안된다.
V3인지 뭔지 계속 잠겨서......... 빠르게 포기하고 노트북으로 넘어가는 편이 좋다. 학교 노트북에도 기본적으로 보안프로그램이 설치되어 있어 안되었었는데, V3 지우니 되었음. |