Firebase Can';t构建用于颤振的释放APK
我目前正在尝试使用Flutter在Windows上构建一个签名版APK。我已经在颤振现场执行了文档中概述的任务。当我运行build命令时,这里是我得到的输出。它似乎围绕着firebase插件。有什么想法吗 公开发行 颤振医生输出 错误日志信息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
事实证明,处理此问题的最佳方法是在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
}
...
}