안드로이드에서 발생되는 문제로, minSdkVersion을 높여서 해결할 수 있습니다. minSdkVersion은 앱이 설치될 수 있는 안드로이드 최소 OS 버전을 의미합니다. 최신 패키지를 사용하기 위해 앱이 구동될 수 있는 환경 최소조건을 올리는 것이라고 생각하면 됩니다.
다음과 같이 파일(프로젝트폴더/android/app/build.gradle)의 해당부분만 찾아서 수정할 수 있도록 합니다.
기존
// 파일경로 : 내프로젝트폴더/android/app/build.gradle (해당 부분만 찾아서 수정할 것)
...
defaultConfig {
// TODO: Specify your own unique Application ID (<https://developer.android.com/studio/build/application-id.html>).
applicationId "com.example.day34_test_firebase"
// You can update the following values to match your application needs.
// For more information, see: <https://docs.flutter.dev/deployment/android#reviewing-the-gradle-build-configuration>.
minSdkVersion flutter.minSdkVersion // 이 부분을 19로 변경
targetSdkVersion flutter.targetSdkVersion
versionCode flutterVersionCode.toInteger()
versionName flutterVersionName
}
...
변경
// 파일경로 : 내프로젝트폴더/android/app/build.gradle (해당 부분만 찾아서 수정할 것)
...
defaultConfig {
// TODO: Specify your own unique Application ID (<https://developer.android.com/studio/build/application-id.html>).
applicationId "com.example.day34_test_firebase"
// You can update the following values to match your application needs.
// For more information, see: <https://docs.flutter.dev/deployment/android#reviewing-the-gradle-build-configuration>.
minSdkVersion 19
targetSdkVersion flutter.targetSdkVersion
versionCode flutterVersionCode.toInteger()
versionName flutterVersionName
}
...
바로 다음에 따라오는 에러가 발생될 수 있습니다. 아래에 따라오는 에러를 함께 확인하세요.
안드로이드 minSdkVersion이 21보다 높으면, multiDex가 기본적으로 설정돼있지만, minSdkVersion이 그보다 낮으면 직접 설정해주어야 합니다. Firebase에 들어가는 파일이 워낙 많기 때문에, 수용할 수 있는 한계치를 넘어버리는 현상이 발생합니다(64k의 Classes가 한계). 그 한계를 풀어준다고 생각하면 됩니다.
다음과 같이 파일(프로젝트폴더/android/app/build.gradle)의 해당부분만 찾아서 수정할 수 있도록 합니다.
기존
// 파일경로 : 내프로젝트폴더/android/app/build.gradle (해당 부분만 찾아서 수정할 것)
...
defaultConfig {
// TODO: Specify your own unique Application ID (<https://developer.android.com/studio/build/application-id.html>).
applicationId "com.example.day34_test_firebase"
// You can update the following values to match your application needs.
// For more information, see: <https://docs.flutter.dev/deployment/android#reviewing-the-gradle-build-configuration>.
minSdkVersion 19
targetSdkVersion flutter.targetSdkVersion
versionCode flutterVersionCode.toInteger()
versionName flutterVersionName
}
...
변경 (multiDexEnabled 만 추가됨)
// 파일경로 : 내프로젝트폴더/android/app/build.gradle (해당 부분만 찾아서 수정할 것)
...
defaultConfig {
// TODO: Specify your own unique Application ID (<https://developer.android.com/studio/build/application-id.html>).
applicationId "com.example.day34_test_firebase"
// You can update the following values to match your application needs.
// For more information, see: <https://docs.flutter.dev/deployment/android#reviewing-the-gradle-build-configuration>.
minSdkVersion 19
targetSdkVersion flutter.targetSdkVersion
versionCode flutterVersionCode.toInteger()
versionName flutterVersionName
multiDexEnabled true // 해당부분이 추가됨 (+)
}
...