갑자기 발생하는 문제
앱을 개발하던 중에 갑자기 앱의 빌드가 안되는 문제가 발생했다.
Unhandled Exception: PlatformException(channel-error, Unable to establish connection on channel., null, null)
이게 무슨 문제일까?
Ai에게 먼저 물어봤다. "이 오류는 주로 Flutter 앱의 Dart 코드와 네이티브 플랫폼(Android 또는 iOS)의 Firebase SDK 간에 통신 채널이 제대로 설정되지 않았을 때 발생합니다." 라고 했다.
Firebase와 Native간의 발생하는 것으로 이해했고, 검색을 해보아도 firebase 설정 파일을 다시 설치해보라는 말이 있어있다. 그래서 다시 해보았다.
ios/Runner/GooleService-info.plist의 파일과 android/app/google-services.json에서 문제가 발생했을 수 있었기 때문에 다시 설치를 진행해보았다. 해결이 되지 않았다.
그렇다면 firebase_options.dart도 다시 설치해보았다. 해결이 되지 않았다. 그렇게 설정파일을 다시 설치하고 프로젝트 파일을 처음부터 다시 만들어보았지만 여전히 같은 문제가 발생하고 있었다.
계속해서 문제 해결을 시도해보던 가운데 아래의 블로그를 보았다.
[flutter/error] Unhandled Exception: PlatformException(channel-error, Unable to establish connection on channel.)
1. 에러 - 장바구니 페이지 -> 결제 페이지로 넘어가는 과정에서 channel-error가 발생했다. 2. 원인 - firebase 관련 패키지가 최신 버전이 아니어서 발생하는 에러. firebase_core가 원인인 듯 했다. 3. 해결
y-min.tistory.com
블로그에선 firebase_core에서 문제가 발생할 수 있다고 설명하고 있었다. 그렇다면 현재 firebase와 관련해서 설치되어있는 패키지들을 살펴보기로 했다.
맨처음으로 블로그에서 나온 firebase_core를 pub.dev사이트에서 정보를 찾아보았다. 역시나 현재의 버전과 최신 버전이 다른것을 확인했다. 혹시나 하는 마음으로 최신 버전으로 바꾸었는데 다음으로 firebase_core_platform_interface의 버전과의 호환이 안된다고 했다. 변화가 생기는 것을 보니 해결될거 같다는 생각이 들었다. 여기나 이것도 버전을 확인해보니 최신버전이 아니여서 버전을 높혀줬다. 그랬더니 iOS pod쪽에서 문제가 다시 연달아서 발생했다. 이 문제도 다시 ai에게 물어보니 iOS 미니멈 version을 높여야한다고 했다. ai가 알려주는 최소버전은 13이였는데 이미 13이여서 fireabase_core의 최신버전 changelog를 살펴보았다. github를 살펴보니 최소버전을 15로 해야한다는 것을 찾았다. 버전을 올려주고 다시 pod을 설치하고 실행해보니 다행히 다시 예전처럼 실행이되는 것을 확인했다.
버전이 바뀌는 것은 늘상있고 항상 문제가 발생하지는 않지만 가만히 있다가 실행이되지 않을 때는 참 곤란하다. 어느 라이브러리가 버전을 업그레이드 되고 그래서 다른 라이브러리, 다른 설정들에 연쇄적으로 영향을 끼치게 되는 것이 이렇게나 오랫동안 시간을 잡아업는 것을 체업하게되면서 버전관리가 참 중요한것을 느끼게 되는 경험을 하게 되었다.
그치만 이렇게 큰 변화를 주는 업데이트를 아는데는 버전 숫자가 크게 변화되었는지도 알아보면 좋을거같다. 이번에 firebase_core와 firebase_core_platform_interface가 각각 3.15.2 -> 4.0.0, 5.4.2 -> 6.0.0으로 맨앞의 숫자가 올라갔는데 이는 큰 변화가 발생한 것을 의미하기 때문에 이러한 변화도 잘 봐두어야한다.
'Flutter > 독서록 앱' 카테고리의 다른 글
| Firebase Auth (0) | 2025.09.19 |
|---|---|
| 책 검색에 무한스크롤 사용하기 (1) | 2025.03.26 |
| Freezed 사용과 오류 (0) | 2025.03.24 |



