Flutter构建报错:无法获取android扩展的flutter属性求助
解决Flutter构建时geolocator_android的Gradle错误
可行解决方案步骤
1. 彻底清除缓存并重新拉取依赖
执行以下命令:
flutter clean flutter pub cache clean flutter pub get
2. 检查项目Android核心配置文件
项目根目录
android/build.gradle:确保Flutter插件引用、仓库配置完整,示例:buildscript { ext.kotlin_version = '1.7.10' repositories { google() mavenCentral() } dependencies { classpath "com.android.tools.build:gradle:7.3.0" classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" } } allprojects { repositories { google() mavenCentral() } } rootProject.buildDir = '../build' subprojects { project.buildDir = "${rootProject.buildDir}/${project.name}" } subprojects { project.evaluationDependsOn(':app') } tasks.register("clean", Delete) { delete rootProject.buildDir }android/app/build.gradle:明确指定编译相关版本号,避免依赖动态变量出错,示例:android { compileSdkVersion 33 ndkVersion flutter.ndkVersion defaultConfig { applicationId "com.your.app.id" minSdkVersion 21 targetSdkVersion 33 versionCode flutterVersionCode.toInteger() versionName flutterVersionName } }
3. 临时修复pub缓存中的geolocator_android配置
找到报错文件/Users/amitbahadur/.pub-cache/hosted/pub.dev/geolocator_android-4.6.2/android/build.gradle:
- 确认文件开头包含Flutter插件引入:
apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" - 将
compileSdkVersion flutter.compileSdkVersion替换为具体版本号(如33),规避动态变量为空的问题。
4. 验证Gradle版本兼容性
检查android/gradle/wrapper/gradle-wrapper.properties中的Gradle版本,确保与当前Flutter版本匹配。例如Flutter 3.10+对应Gradle 7.5:
distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-all.zip
内容的提问来源于stack exchange,提问作者Amit Bahadur
相关产品推荐
相关产品推荐

