Firebase Can';t构建用于颤振的释放APK

Firebase Can';t构建用于颤振的释放APK,firebase,flutter,release,flutter-release,flutter-android,Firebase,Flutter,Release,Flutter Release,Flutter Android,我目前正在尝试使用Flutter在Windows上构建一个签名版APK。我已经在颤振现场执行了文档中概述的任务。当我运行build命令时,这里是我得到的输出。它似乎围绕着firebase插件。有什么想法吗 公开发行 颤振医生输出 错误日志信息 事实证明,处理此问题的最佳方法是在android/app/build.gradle中进行以下更改: android { compileSdkVersion 26 buildToolsVersion '26.0.3' lintOpti

我目前正在尝试使用Flutter在Windows上构建一个签名版APK。我已经在颤振现场执行了文档中概述的任务。当我运行build命令时,这里是我得到的输出。它似乎围绕着firebase插件。有什么想法吗

公开发行 颤振医生输出 错误日志信息
事实证明,处理此问题的最佳方法是在android/app/build.gradle中进行以下更改:

android {
    compileSdkVersion 26
    buildToolsVersion '26.0.3'
    lintOptions {
        disable 'InvalidPackage'
    }

    defaultConfig {
        applicationId "com.example.app"
        minSdkVersion 16
        targetSdkVersion 26
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }

    signingConfigs {
        release {
            keyAlias keystoreProperties['keyAlias']
            keyPassword keystoreProperties['keyPassword']
            storeFile file(keystoreProperties['storeFile'])
            storePassword keystoreProperties['storePassword']
        }
    }
    // This is the main section that I've updated
    // to get the release APK to build
    buildTypes {
        release {
            profile {
                matchingFallbacks = ['debug', 'release']
            }
            signingConfig signingConfigs.release
        }
    }
}

flutter {
    source '../..'
}

dependencies {
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'com.android.support.test:runner:1.0.1'
    androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.1'
}

apply plugin: 'com.google.gms.google-services'

有了这个更改,我就能够构建发布版APK。

我尝试从调试更改为发布版。那个解决方案对我不起作用。然而,当我检查这个网站时:它说你可以设置一个依赖项,而无需指定版本。所以在pubspec.yaml文件中,我做了这个,它对我起了作用

dependencies:
  flutter:
    sdk: flutter
    image_picker: 
    google_sign_in: 
    firebase_analytics: 
    firebase_auth: 
    firebase_database:
    firebase_storage:

我也犯了同样的错误,结果是我两次错误地使用了buildType

buildTypes {
  buildTypes {
    .....
  }
}

我刚关掉了线头。它解决了我发布版本的问题

lintOptions {
        disable 'InvalidPackage'
        checkReleaseBuilds false
}

如果您对从android生成apk有疑问,请尝试使用终端命令:

Flutter build apk --build-name =1.0.1
Flutter build apk --build-Number=10
Flutter build apk --build-name =1.0.1 --build-number=10
确保在生成apk时始终更改生成名称和生成编号。例如,如果您的最新版本名为1.0.1,请使用1.0.2或更高版本,并且内部版本号为11。每次更改此选项,您的问题就会得到解决。

尝试以下操作:

lintOptions {
        disable 'InvalidPackage'
        checkReleaseBuilds false
}

android/app/build.gradle

解决方案:在
android\app\build.gradle

android {
    ...
    lintOptions {
        disable 'InvalidPackage'
        checkReleaseBuilds false
        // Or, if you prefer, you can continue to check for errors in release builds,
        // but continue the build even when errors are found:
        abortOnError false
    }
    ...
}

你能展示/说出你的身材顶部有什么吗?我也遵循了文档,但是当我尝试从属性文件(配置登录gradle的步骤1)添加密钥库信息时,新属性()和新文件输入流()都无法解析…我添加了更多的构建脚本,希望这有帮助。这意味着什么
checkReleaseBuilds false
这修复了我的问题。这将禁用lint checks应用程序现在在启动时崩溃,是否与此相关?这不太可能。因为对我来说工作成功,您可以生成您的签名apk/cia命令提示符:
Flutter build apk --build-name =1.0.1
Flutter build apk --build-Number=10
Flutter build apk --build-name =1.0.1 --build-number=10
lintOptions {
        disable 'InvalidPackage'
        checkReleaseBuilds false
}
android {
    ...
    lintOptions {
        disable 'InvalidPackage'
        checkReleaseBuilds false
        // Or, if you prefer, you can continue to check for errors in release builds,
        // but continue the build even when errors are found:
        abortOnError false
    }
    ...
}