1. FAILURE: Build failed with an exception.
빌드문제는 상당히 종종 자주 나타난다.
또한 원인은 다양한데, 해결을 위한 진단 과정이 까다롭다.
하나하나 체크해봐야한다.
1) flutter doctor
> flutter doctor
기본적인 구성환경을 점검해주므로 여기서 문제가 나타나면 해당 문제를 검색하여 해결해야한다.
2) flutter upgrade
> flutter upgrade
시시각각 바뀌는 플러터 버전에 따른 의존성이 있어, 에러가 발생할 수 있다.
라이브러리 하나를 가져다 쓰더라도 의존성을 잘 봐가면서 추가해야하지만,
빠른 개발을위해 사용하다보면, 체크를 잊곤하므로, upgrade를 하자.
3) flutter clean & gradlew clean build
> flutter clean
> gradlew clean build
> pub get
4) gradle 버전 확인
필자는 이번에 Andriod Sdk 버전과 gradle 버전문제가 있었다.
permisson_handler가 반드시 Andriod Sdk 33이상에서 구동되므로 API버전이 33이 필요했는데,
32를 쓰는과정중에 permisson_handler 10.2.0으로 자동 업데이트 되면서,
해당 라이브러리안에서 문제가 야기되었다.
버전 문제 해결은 아래글을 참고
https://jjunii486.tistory.com/306
2. ADB exited with exit code 1
ADB는 안드로이드 디버그 브릿지 의 약자로,
보통 에뮬레이터 / 디바이스에 문제로 컴파일이 되지 않는 에러이다.
Launching lib\main.dart on SM S901N in debug mode...
Running Gradle task 'assembleDebug'...
√ Built build\app\outputs\flutter-apk\app-debug.apk.
Installing build\app\outputs\flutter-apk\app.apk...
Error: ADB exited with exit code 1
Performing Streamed Install
adb: failed to install C:\Users\bang\AndroidStudioProjects\Lottery_Bang\build\app\outputs\flutter-apk\app.apk:
Error launching application on SM S901N.
Run 시, 위와 같은 에러가 터지면서 설치가 안될때가 있다.
그럴때마다 필자는 앱을 지웠다가 다시 Run을 통해, 재 설치하였는데,..
이제는 지워도 되지 않았다..
1. 에뮬레이터
1) 에뮬 공간 늘리기
위와 같이 내부 저장 공간을 늘려서 해결될 수 있다.
2) 에뮬 초기화
Device Manager 에 Wipe Data 를 통해 사용자 데이터를 초기화 합니다
3) 안드로이드 API 버전
현재 내가 개발하는 앱의 최소 api버전이 높아서
현재 에뮬레이터 버전에 지원되지 않는 앱으로 개발됬을 수 있다.
이럴 때는 새로 더 높은 API 버전으로 에뮬을 만들어 쓰자.
2. 폰 연결시
폰을 연결하여 아래 명령어를 수행하자. 해당 패키지를 완전히 제거하여 재설치를 돕는다.
cmd > adb uniinstall "패키지명"
패키지명은 andriod 폴더내에 build.gradle 안에서
com.xxx.xxx 형식으로 본인이 지정했던 이름을 찾을수 있다.
확인 해야할 것
1) MIDI 연결
MIDI 연결 외에 파일 전송으로는 생성된 apk파일을 설치할 수 없다.
2) flutter clean
앱의 build 내용을 전부 삭제하여
다시 처음부터 라이브러리 설치후 빌드를 해보자
> flutter clean
Deleting build... 3.6s
Deleting .dart_tool... 37ms
Deleting Generated.xcconfig... 1ms
Deleting flutter_export_environment.sh... 1ms
Deleting .flutter-plugins-dependencies... 0ms
Deleting .flutter-plugins... 1ms
3) 앱 삭제 여부
앱이 남아있어서 버전문제와 의존성문제 등으로 설치가 어려울수 있다.
앱이 보인다면 삭제하거나, 위에 나와있는 cmd 명령어를 Terminal에서 수행하자.
'Study > Flutter' 카테고리의 다른 글
[Flutter] FCM foreground, background 설정 (IOS,AOS) with local_notification (0) | 2023.01.04 |
---|---|
[Flutter] Firebase Cloud Messaging - FCM 테스트발송 (2) | 2022.12.23 |
[Flutter] JSON 직렬화, json_annotation을 통한 제너레이트 (0) | 2022.11.18 |
[Flutter] FireStore 사용하기 (0) | 2022.08.17 |
[Flutter] FireAuth 로그인과 인증 (0) | 2022.08.04 |