J'essaie actuellement de créer un APK signé sous Windows en utilisant Flutter. J'ai effectué les tâches décrites dans la documentation sur le site Flutter. Lorsque je lance la commande de construction, voici le résultat obtenu. Il semble être autour des plugins Firebase. Des idées?
dependencies:
flutter:
sdk: flutter
firebase_auth: 0.4.0
firebase_database: ^0.3.0
C:\Users\myuser\projects\myflutterapp>flutter doctor
[√] Flutter (on Microsoft Windows [Version 10.0.16299.125], locale en-US, channel alpha)
• Flutter at C:\Users\myuser\flutter
• Framework revision 8f65fec5f5 (3 weeks ago), 2017-12-12 09:50:14 -0800
• Engine revision edaecdc8b8
• Tools Dart version 1.25.0-dev.11.0
• Engine Dart version 2.0.0-Edge.d8ae797298c3a6cf8dc9f4558707bd2672224d3e
[√] Android toolchain - develop for Android devices (Android SDK 27.0.1)
• Android SDK at C:\Users\myuser\AppData\Local\Android\Sdk
• Android NDK at C:\Users\myuser\AppData\Local\Android\Sdk\ndk-bundle
• Platform Android-27, build-tools 27.0.1
• Android_HOME = C:\Users\myuser\AppData\Local\Android\Sdk
• Java binary at: C:\Program Files\Android\Android Studio\jre\bin\Java
• Java version OpenJDK Runtime Environment (build 1.8.0_152-release-915-b01)
[√] Android Studio (version 3.0)
• Android Studio at C:\Program Files\Android\Android Studio
• Java version OpenJDK Runtime Environment (build 1.8.0_152-release-915-b01)
[-] Connected devices
• None
C:\Users\myuser\projects\myflutterapp>flutter build apk --release
Initializing gradle... 0.9s
Resolving dependencies... 1.1s
Running 'gradlew assembleRelease'...
Configuration 'debugCompile' in project ':app' is deprecated. Use 'debugImplementation' instead.
Configuration 'profileCompile' in project ':app' is deprecated. Use 'profileImplementation' instead.
Configuration 'releaseCompile' in project ':app' is deprecated. Use 'releaseImplementation' instead.
Configuration 'compile' in project ':app' is deprecated. Use 'implementation' instead.
registerResGeneratingTask is deprecated, use registerGeneratedFolders(FileCollection)
registerResGeneratingTask is deprecated, use registerGeneratedFolders(FileCollection)
registerResGeneratingTask is deprecated, use registerGeneratedFolders(FileCollection)
Configuration 'debugProvided' in project ':firebase_auth' is deprecated. Use 'debugCompileOnly' instead.
Configuration 'releaseProvided' in project ':firebase_auth' is deprecated. Use 'releaseCompileOnly' instead.
Configuration 'compile' in project ':firebase_core' is deprecated. Use 'implementation' instead.
Configuration 'debugProvided' in project ':firebase_core' is deprecated. Use 'debugCompileOnly' instead.
Configuration 'releaseProvided' in project ':firebase_core' is deprecated. Use 'releaseCompileOnly' instead.
Configuration 'debugProvided' in project ':firebase_database' is deprecated. Use 'debugCompileOnly' instead.
Configuration 'releaseProvided' in project ':firebase_database' is deprecated. Use 'releaseCompileOnly' instead.
Skipping AOT snapshot build. Fingerprint match.
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':app:lintVitalRelease'.
> Could not resolve all artifacts for configuration ':app:profileRuntimeClasspath'.
> Could not resolve project :firebase_auth.
Required by:
project :app
> Unable to find a matching configuration of project :firebase_auth:
- Configuration 'debugApiElements':
- Required com.Android.build.api.attributes.BuildTypeAttr 'profile' and found incompatible value 'debug'.
- Required com.Android.build.gradle.internal.dependency.AndroidTypeAttr 'Aar' and found compatible value 'Aar'.
- Found com.Android.build.gradle.internal.dependency.VariantAttr 'debug' but wasn't required.
- Required org.gradle.api.attributes.Usage 'Java-runtime' and found incompatible value 'Java-api'.
- Configuration 'debugRuntimeElements':
- Required com.Android.build.api.attributes.BuildTypeAttr 'profile' and found incompatible value 'debug'.
- Required com.Android.build.gradle.internal.dependency.AndroidTypeAttr 'Aar' and found compatible value 'Aar'.
- Found com.Android.build.gradle.internal.dependency.VariantAttr 'debug' but wasn't required.
- Required org.gradle.api.attributes.Usage 'Java-runtime' and found compatible value 'Java-runtime'.
- Configuration 'releaseApiElements':
- Required com.Android.build.api.attributes.BuildTypeAttr 'profile' and found incompatible value 'release'.
- Required com.Android.build.gradle.internal.dependency.AndroidTypeAttr 'Aar' and found compatible value 'Aar'.
- Found com.Android.build.gradle.internal.dependency.VariantAttr 'release' but wasn't required.
- Required org.gradle.api.attributes.Usage 'Java-runtime' and found incompatible value 'Java-api'.
- Configuration 'releaseRuntimeElements':
- Required com.Android.build.api.attributes.BuildTypeAttr 'profile' and found incompatible value 'release'.
- Required com.Android.build.gradle.internal.dependency.AndroidTypeAttr 'Aar' and found compatible value 'Aar'.
- Found com.Android.build.gradle.internal.dependency.VariantAttr 'release' but wasn't required.
- Required org.gradle.api.attributes.Usage 'Java-runtime' and found compatible value 'Java-runtime'.
> Could not resolve project :firebase_database.
Required by:
project :app
> Unable to find a matching configuration of project :firebase_database:
- Configuration 'debugApiElements':
- Required com.Android.build.api.attributes.BuildTypeAttr 'profile' and found incompatible value 'debug'.
- Required com.Android.build.gradle.internal.dependency.AndroidTypeAttr 'Aar' and found compatible value 'Aar'.
- Found com.Android.build.gradle.internal.dependency.VariantAttr 'debug' but wasn't required.
- Required org.gradle.api.attributes.Usage 'Java-runtime' and found incompatible value 'Java-api'.
- Configuration 'debugRuntimeElements':
- Required com.Android.build.api.attributes.BuildTypeAttr 'profile' and found incompatible value 'debug'.
- Required com.Android.build.gradle.internal.dependency.AndroidTypeAttr 'Aar' and found compatible value 'Aar'.
- Found com.Android.build.gradle.internal.dependency.VariantAttr 'debug' but wasn't required.
- Required org.gradle.api.attributes.Usage 'Java-runtime' and found compatible value 'Java-runtime'.
- Configuration 'releaseApiElements':
- Required com.Android.build.api.attributes.BuildTypeAttr 'profile' and found incompatible value 'release'.
- Required com.Android.build.gradle.internal.dependency.AndroidTypeAttr 'Aar' and found compatible value 'Aar'.
- Found com.Android.build.gradle.internal.dependency.VariantAttr 'release' but wasn't required.
- Required org.gradle.api.attributes.Usage 'Java-runtime' and found incompatible value 'Java-api'.
- Configuration 'releaseRuntimeElements':
- Required com.Android.build.api.attributes.BuildTypeAttr 'profile' and found incompatible value 'release'.
- Required com.Android.build.gradle.internal.dependency.AndroidTypeAttr 'Aar' and found compatible value 'Aar'.
- Found com.Android.build.gradle.internal.dependency.VariantAttr 'release' but wasn't required.
- Required org.gradle.api.attributes.Usage 'Java-runtime' and found compatible value 'Java-runtime'.
> Could not resolve project :firebase_core.
Required by:
project :app
> Unable to find a matching configuration of project :firebase_core:
- Configuration 'debugApiElements':
- Required com.Android.build.api.attributes.BuildTypeAttr 'profile' and found incompatible value 'debug'.
- Required com.Android.build.gradle.internal.dependency.AndroidTypeAttr 'Aar' and found compatible value 'Aar'.
- Found com.Android.build.gradle.internal.dependency.VariantAttr 'debug' but wasn't required.
- Required org.gradle.api.attributes.Usage 'Java-runtime' and found incompatible value 'Java-api'.
- Configuration 'debugRuntimeElements':
- Required com.Android.build.api.attributes.BuildTypeAttr 'profile' and found incompatible value 'debug'.
- Required com.Android.build.gradle.internal.dependency.AndroidTypeAttr 'Aar' and found compatible value 'Aar'.
- Found com.Android.build.gradle.internal.dependency.VariantAttr 'debug' but wasn't required.
- Required org.gradle.api.attributes.Usage 'Java-runtime' and found compatible value 'Java-runtime'.
- Configuration 'releaseApiElements':
- Required com.Android.build.api.attributes.BuildTypeAttr 'profile' and found incompatible value 'release'.
- Required com.Android.build.gradle.internal.dependency.AndroidTypeAttr 'Aar' and found compatible value 'Aar'.
- Found com.Android.build.gradle.internal.dependency.VariantAttr 'release' but wasn't required.
- Required org.gradle.api.attributes.Usage 'Java-runtime' and found incompatible value 'Java-api'.
- Configuration 'releaseRuntimeElements':
- Required com.Android.build.api.attributes.BuildTypeAttr 'profile' and found incompatible value 'release'.
- Required com.Android.build.gradle.internal.dependency.AndroidTypeAttr 'Aar' and found compatible value 'Aar'.
- Found com.Android.build.gradle.internal.dependency.VariantAttr 'release' but wasn't required.
- Required org.gradle.api.attributes.Usage 'Java-runtime' and found compatible value 'Java-runtime'.
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.
* Get more help at https://help.gradle.org
BUILD FAILED in 38s
Gradle build failed: 1
En fin de compte, la meilleure façon de gérer cela consiste à apporter la modification suivante dans 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'
Avec ce changement, j'ai pu construire la version APK.
Je viens de désactiver la charpie. Il a résolu mon problème de version construite.
lintOptions {
disable 'InvalidPackage'
checkReleaseBuilds false
}
J'ai eu la même erreur, il s'est avéré que j'ai utilisé deux fois par défaut buildTypes
buildTypes {
buildTypes {
.....
}
}
J'ai essayé de passer de debug à release. Cette solution n'a pas fonctionné pour moi. Cependant, lorsque j'ai consulté ce site: https://www.dartlang.org/tools/pub/dependencies il est indiqué que vous pouvez définir une dépendance sans spécifier de version. Donc, dans le fichier pubspec.yaml, je l'ai fait et cela a fonctionné pour moi ...
dependencies:
flutter:
sdk: flutter
image_picker:
google_sign_in:
firebase_analytics:
firebase_auth:
firebase_database:
firebase_storage: