Flutter生成APK时出现异常错误,求解决方法
Flutter稳定版构建APK时异常错误排查求助
我是Flutter新手,使用Flutter稳定版构建APK时遇到异常错误,恳请各位帮忙排查并提供解决方案。
项目pubspec.yaml配置
name: taxi_driver description: A new Flutter project. publish_to: 'none' # Remove this line if you wish to publish to pub.dev version: 1.0.0+1 environment: sdk: ">=2.17.1 <3.0.0" dependencies: flutter: sdk: flutter cupertino_icons: ^1.0.5 chewie: 1.5.0 # TOAST fluttertoast: 8.1.2 # IMAGE cached_network_image: ^3.2.3 # BASE intl: ^0.18.0 google_fonts: ^4.0.4 html: ^0.15.1 shared_preferences: ^2.0.17 flutter_widget_from_html: ^0.9.1 # UI sliding_up_panel: ^2.0.0+1 dotted_line: ^3.1.0 lottie: ^2.2.0 flutter_rating_bar: ^4.0.1 flutter_staggered_animations: ^1.1.1 bottom_picker: ^2.0.1 country_code_picker: ^2.0.2 flutter_native_contact_picker: ^0.0.3 timeline_tile: ^2.0.0 flutter_vector_icons: ^2.0.0 flutter_switch: ^0.3.2 syncfusion_flutter_charts: ^20.4.44 #OTP TEXTFIELD otp_text_field: ^1.1.3 # MAP geolocator: ^9.0.2 geocoding: ^2.0.5 google_maps_flutter: ^2.2.3 flutter_polyline_points: ^1.0.0 location: ^4.4.0 # IMAGES image_picker: ^0.8.6+1 file_picker: ^5.2.5 date_time_picker: ^2.1.0 # CONNECTIVITY package_info_plus: ^3.0.2 # CONNECTIVITY http: ^0.13.5 connectivity_plus: ^3.0.2 url_launcher: ^6.1.8 #FIREBASE firebase_crashlytics: ^3.0.11 firebase_core: ^2.4.1 firebase_auth: ^4.2.5 firebase_storage: ^11.0.10 firebase_database: ^10.0.9 paginate_firestore: ^1.0.3+1 cloud_firestore: ^4.3.1 # STATE MANAGEMENT mobx: ^2.1.3 flutter_mobx: ^2.0.6+5 # Payment gateway razorpay_flutter: ^1.3.4 flutter_stripe: ^3.0.0 flutter_paystack: ^1.0.7 flutter_braintree: ^2.3.1 flutterwave_standard: ^1.0.6 flutter_paytabs_bridge: ^2.3.2 mercado_pago_mobile_checkout: ^0.2.0-dev.3 my_fatoorah: ^3.2.0 paytm: ^3.0.1 # PUSH NOTIFICATION onesignal_flutter: ^3.5.0 # Social Login google_sign_in: ^5.4.3 # MQTT mqtt_client: ^9.7.4 # DOWNLOAD INVOICE PDF pdf: ^3.8.4 path_provider: ^2.0.12 open_file: ^3.2.1 printing: ^5.9.3 flutter_localizations: sdk: flutter dev_dependencies: flutter_test: sdk: flutter build_runner: ^2.3.3 mobx_codegen: ^2.1.1 #flutter packages pub run build_runner build --delete-conflicting-outputs dependency_overrides: firebase_core_platform_interface: ^4.5.2 intl: ^0.18.0 package_info_plus: ^3.0.2 ffi: ^2.0.1 open_file: 3.2.1 cloud_firestore: ^4.3.1 flutter: uses-material-design: true assets: - images/ - images/icons/ - images/flag/
错误截图

解决方案
从错误截图来看,问题是Google Play服务相关依赖版本冲突导致重复类,具体是com.google.android.gms.common.api.zza等类在多个jar包中重复出现。可以按以下步骤解决:
- 统一Play服务依赖版本:在项目的
android/build.gradle文件中,找到allprojects节点,添加版本强制策略,确保所有依赖使用相同版本的Play服务库:
allprojects { repositories { google() mavenCentral() } configurations.all { resolutionStrategy { force 'com.google.android.gms:play-services-base:18.1.0' force 'com.google.android.gms:play-services-basement:18.1.0' // 若还有其他重复类,可根据错误提示添加对应的库版本强制 } } }
清理缓存并重建:
- 执行命令清理项目缓存:
flutter clean - 重新获取依赖:
flutter pub get - 尝试重新构建Release APK:
flutter build apk --release
- 执行命令清理项目缓存:
查看详细冲突报告:如果问题仍存在,可查看
android/app/build/outputs/mapping/release/duplicate_classes.txt文件,里面会列出所有重复的类和对应的依赖库,针对性调整版本或排除冲突依赖。调整pubspec依赖:检查pubspec.yaml中依赖的版本,比如geolocator、firebase系列、google_maps_flutter这些依赖Play服务的库,尝试升级到兼容的版本,或者在
dependency_overrides中强制统一相关依赖的版本。
内容的提问来源于stack exchange,提问作者Kamran Ahmed Siddiqui
相关产品推荐
相关产品推荐

