web-dev-qa-db-fra.com

L'exécution a échoué pour la tâche ': flutter_Twitter: verifyReleaseResources'

Je travaille sur Flutter app. Je peux exécuter l'application dans l'appareil Android avec succès, mais essayez de créer build (. Apk ) fichier et obtenu ci-dessous les problèmes.

FAILURE: Build failed with an exception.                                                                           

* What went wrong:                                                                                                 
Execution failed for task ':flutter_Twitter:verifyReleaseResources'.                                               
> A failure occurred while executing com.Android.build.gradle.internal.tasks.Workers$ActionFacade                  
   > Android resource linking failed                                                                               
     /Users/ipatel/.gradle/caches/transforms-2/files-2.1/8f09fa5c6115de167b21b323f769edd9/core-1.0.0/res/values/values.xml:57:5-88:25: AAPT: error: resource Android:attr/fontVariationSettings not found.

     /Users/ipatel/.gradle/caches/transforms-2/files-2.1/8f09fa5c6115de167b21b323f769edd9/core-1.0.0/res/values/values.xml:57:5-88:25: AAPT: error: resource Android:attr/ttcIndex not found.


* Try:                                                                                                             
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org                                                                         

BUILD FAILED in 5m 2s                                                                                              
Running Gradle task 'assembleRelease'...                                                                           
Running Gradle task 'assembleRelease'... Done                     303.8s (!)
The built failed likely due to AndroidX incompatibilities in a plugin. The tool is about to try using Jetfier to solve the incompatibility.
Building plugin firebase_messaging...
The plugin firebase_messaging could not be built due to the issue above.

Ci-dessous les trucs du projet

defaultConfig {
        // TODO: Specify your own unique Application ID (https://developer.Android.com/studio/build/application-id.html).
        applicationId "com.xxxx.eeee"
        minSdkVersion 21
        targetSdkVersion 28
        versionCode flutterVersionCode.toInteger()
        versionName flutterVersionName
        testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
    }

dependencies {
    implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'androidx.test:runner:1.1.1'
    androidTestImplementation 'androidx.test.espresso:espresso-core:3.1.1'
}

> local.properties

sdk.dir=/Users/ipatel/Library/Android/sdk
flutter.sdk=/Users/ipatel/Documents/Amit/FlutterSetup/flutter
flutter.buildMode=release
flutter.versionName=1.0.0
flutter.ver

Mon application est compatible avec AndroidX et a également essayé avec de nombreuses solutions mais ne peut pas résoudre mon problème.

J'ai vérifié
- https://github.com/roughike/flutter_Twitter_login/issues/29
- ne erreur s'est produite lors de l'exécution de com.Android.build.gradle.internal.tasks
- erreur de flottement "La dépendance Android 'androidx.core: core' a une version différente" en utilisant flutter_local_notifications et des packages de localisation

et d'autres.

Résultat Flutter Doctor:

Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel beta, v1.12.13+hotfix.6, on Mac OS X 10.14.3 18D109, locale en-IN)

[✓] Android toolchain - develop for Android devices (Android SDK version 29.0.2)
[✓] Xcode - develop for iOS and macOS (Xcode 10.3)
[✓] Chrome - develop for the web
[✓] Android Studio (version 3.5)
[✓] VS Code (version 1.41.1)
[✓] Connected device (4 available)

build.gradle

Android {
    compileSdkVersion 28

    sourceSets {
        main.Java.srcDirs += 'src/main/kotlin'
    }

    lintOptions {
        disable 'InvalidPackage'
    }

    defaultConfig {
        applicationId "com.xxxx.aaaa"
        minSdkVersion 21
        targetSdkVersion 28
        multiDexEnabled true
        versionCode flutterVersionCode.toInteger()
        versionName flutterVersionName
        testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
    }

    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
        }
    }
}

gradle.properties

org.gradle.jvmargs=-Xmx1536M
Android.enableR8=true
Android.useAndroidX=true
Android.enableJetifier=true

~ PS: faites-moi savoir si vous voulez plus de détails de ma part.

9
iPatel

Le problème est qu'une bibliothèque n'est pas compatible ou n'utilise pas androidx tandis que d'autres le sont. Merci à Google d'avoir transféré toute la bibliothèque de support vers androidx, de nombreuses bibliothèques ayant des conflits comme celui-ci et je vais surtout déboguer autour de la bibliothèque qui a un problème comme commenter et décommenter la bibliothèque de pubspec.

En supposant que le plugin flutter_Twitter était le problème.

Comme nous pouvons le vérifier, ce plugin Twitter n'utilisant pas AndroidX lien nous devons donc le changer nous-mêmes.

(tous ces changements doivent être modifiés dans le plugin Twitter, pas dans le projet Flutter)

Je pense que vous pouvez changer le gradle.properties pour utiliser androidx et également compiler la version en 28 gradle.properties:

Android.useAndroidX=true
Android.enableJetifier=true

ajoutez ces deux lignes, changez le chemin de classe gradle classpath 'com.Android.tools.build:gradle:3.5.3' et compileSdkVersion 28 dans flutter_Twitter. Je suis capable de générer une build de version en utilisant ce plugin.

Ohh yah vous pouvez trouver votre version du plugin en cache à /Users/parth.dave/.pub-cache/hosted/pub.dartlang.org/flutter_Twitter_login-1.1.0/ quelque chose comme ça où vous pouvez le mettre à jour. ou ouvrez Android dans androidstudio et studio vous montrera deux projets d'application et Twitter où vous pouvez mettre à jour ces choses.

parfois, il est préférable d'ouvrir le projet Android dans Android studio et de mettre à jour toutes les choses dont vous pourriez obtenir des erreurs avant d'exécuter des projets Flutter).

4
Parth Dave

Le problème vient de Execution failed for task ':flutter_Twitter:verifyReleaseResources'. J'ai trouvé un lien pour ce problème flutter_Twitter_login/issue # 12

Ajoutez cette dépendance dans votre pubspec.yaml fichier et laissez-moi savoir cela fonctionne ou non?

flutter_Twitter_login: 
  git: git://github.com/eudangeld/flutter_Twitter_login.git
5
A R

semble que votre firebase_messaging la version de la bibliothèque ne prend pas en charge AndroidX. Assurez-vous que vous avez mis à jour la version de cette bibliothèque.

dependencies:
  firebase_messaging: ^6.0.9
0
KumarSunil17

Vous devez mettre à jour la version compileSdkVersion du module flutter_Twitter à 28:

1/Dans votre projet Flutter, localisez votre dossier "Android" et ouvrez-le en tant que projet Android dans Android Studio.

2/Développez "Gradle Scripts" et attendez qu'il se charge.

3/Localisez "build.gradle (Module: flutter_Twitter)"

4/Modifiez la version compileSdk de 27-> 28.

5/Enregistrez les modifications.

Ma construction a fonctionné après cela. La réponse était ici: https://github.com/flutter/flutter/issues/32595

0
Florian Lavorel

merci, cela a fonctionné pour moi pour device_id: ^ 0.1.3 plugin conflit avec cloud_firestore: ^ 0.13.4 + 2

  1. Dans votre projet Flutter, recherchez votre dossier "Android" et ouvrez-le en tant que projet Android dans Android Studio.

  2. Développez "Gradle Scripts" et attendez qu'il se charge.

  3. Localisez "build.gradle (Module: device_id)"

  4. Modifiez la version compileSdk de 27-> 28.

  5. Enregistrez les modifications.

0
Om28dz Alg