为什么我得到这些错误,我试图释放apk
我运行“flutter build apk --发布”
任务':app:lintVitalRelease'执行失败。x1c 0d1x配置根项目'android_intent'时出现问题。
- 问题:配置根项目“android_intent”时出现问题。
找不到SDK位置。请使用www.example.com档案中的sdk.dirlocal.properties或ANDROID_HOME环境变量来定义位置。
安卓/应用程序/构建.gradle
def localProperties = new Properties() def localPropertiesFile = rootProject.file('local.properties') if (localPropertiesFile.exists()) {
localPropertiesFile.withReader('UTF-8') { reader ->
localProperties.load(reader)
} }
def flutterRoot = localProperties.getProperty('flutter.sdk') if (flutterRoot == null) {
throw new GradleException("Flutter SDK not found. Define location with flutter.sdk in the local.properties file.") }
def flutterVersionCode = localProperties.getProperty('flutter.versionCode') if (flutterVersionCode == null) {
flutterVersionCode = '1' }
def flutterVersionName = localProperties.getProperty('flutter.versionName') if (flutterVersionName == null) {
flutterVersionName = '1.0' }
apply plugin: 'com.android.application' apply plugin: 'kotlin-android' apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"
android {
compileSdkVersion 28
sourceSets {
main.java.srcDirs += 'src/main/kotlin'
}
lintOptions {
disable 'InvalidPackage'
}
defaultConfig {
// TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html).
applicationId "com.example.deleviry"
minSdkVersion 21
targetSdkVersion 28
versionCode flutterVersionCode.toInteger()
versionName flutterVersionName
multiDexEnabled true
}
buildTypes {
release {
// TODO: Add your own signing config for the release build.
// Signing with the debug keys for now, so `flutter run --release` works.
signingConfig signingConfigs.debug
}
} }
flutter {
source '../..' }
dependencies {
implementation 'com.google.firebase:firebase-core:17.2.0'
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version" }
apply plugin: 'com.google.gms.google-services'
android/构建版本.gradle
buildscript {
ext.kotlin_version = '1.3.50'
repositories {
google()
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:3.5.0'
classpath 'com.google.gms:google-services:4.3.3'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
} }
allprojects {
repositories {
google()
jcenter()
} }
rootProject.buildDir = '../build' subprojects {
project.buildDir = "${rootProject.buildDir}/${project.name}" } subprojects {
project.evaluationDependsOn(':app') }
task clean(type: Delete) {
delete rootProject.buildDir }
7条答案
按热度按时间ymdaylpp1#
升级gradle构建工具似乎打破了一些lints。
要解决此问题,您可以:
如果您的错误显示为debug/libs.jar,请构建--debug,然后--release。
如果您的错误是profile/libs.jar,请构建--profile,然后--release。
来自https://github.com/flutter/flutter/issues/58247#issuecomment-636500680
如果以上方法无效,您可以禁用检查。
在android/app/build.gradle文件的
lintOptions
中添加checkReleaseBuilds false
。pw136qt22#
如果您的错误为
debug/libs.jar
,请先建置--debug
,然后建置--release
:如果您的错误显示为
profile/libs.jar
,请构建--profile
,然后构建--release
:从这里拿走
o2rvlv0m3#
如果您遇到了这个问题,并且不能像我一样用任何一个修复程序来修复它,那么您可能有不同的风格。我必须为每个风格运行run和run --release命令,然后才能无错误地构建一个。
所以flutter run --flavor dev...(对每种口味都这样做)flutter run --flavor lastFlavor然后flutter build apk --flavor dev(错误)...(对每种口味都这样做)flutter build apk --flavor lastFlavor(成功!)
从现在开始,您可以毫无错误地构建每种风格:)
ekqde3dh4#
我坚持使用
3.x
系列(3.6.4
)中的最新Android Studio Gradle插件和最新的Gradle版本(AS插件3.6.4
+ Gradle6.6
对我来说不会产生任何错误)。zvokhttg5#
不确定这是否是正确的方法,但我通过添加这些行解决了类似的问题
t98cgbkg6#
在我的例子中,Android/App/Build.Gradle中缺少这部分代码,所以我添加了它,它就工作了。
8hhllhi27#
我已经通过com.android.tools.build在android〉build.gradle dependecies中添加类路径“www.example.com:gradle:7.2.1”解决了这个问题。
注意:我的gradle Package 器版本是https://services.gradle.org/distributions/gradle-7.4.2-all.zip中的gradle-wrapper.properties
基本上这个问题发生的一些依赖关系使用最新的gradle版本和您的项目版本是不同的。