将compileSdkVersion设为33时出现该错误的原因是什么?
设置compileSdkVersion为33后触发Firebase核心库错误的原因
错误信息
/C:/flutter_windows_3.3.4-stable/flutter/.pub-cache/hosted/pub.dartlang.org/firebase_core-1.24.0/lib/src/firebase_app.dart:18:25: Error: Member not found: 'FirebaseAppPlatform.verifyExtends'.
FirebaseAppPlatform.verifyExtends(_delegate);
原因分析
- 核心是版本不兼容问题:你使用的
firebase_core:1.24.0版本,与当前Flutter 3.3.4、compileSdkVersion 33的组合不匹配。 FirebaseAppPlatform.verifyExtends是Firebase插件底层的平台校验方法,旧版firebase_core:1.24.0既没有适配compileSdk 33的API变化,也和Flutter 3.3.4的插件底层逻辑存在接口调用差异,直接导致方法找不到。- compileSdkVersion升级到33后,Android部分API规范有调整,旧版firebase_core的代码未针对这些调整做适配,进一步触发了接口缺失的错误。
解决办法
- 升级firebase_core版本:把
pubspec.yaml里的firebase_core依赖升级到^2.0.0及以上,该版本开始全面适配compileSdk 33和Flutter 3.x系列版本,执行flutter pub get更新依赖。 - 同步升级其他Firebase插件:确保所有Firebase相关插件(如firebase_auth、firebase_storage等)的版本与firebase_core兼容,避免跨版本冲突。
- 临时降级compileSdkVersion:如果暂时不想升级插件,可以把compileSdkVersion降回31或32,适配当前
firebase_core:1.24.0的版本,但这只是权宜之计,长期建议升级插件到兼容版本。
内容的提问来源于stack exchange,提问作者Ermac_Mein
相关产品推荐
相关产品推荐

