Falha na execução da tarefa ': flutter_twitter: confirmReleaseResources'

9

Estou trabalhando no aplicativo Flutter . Posso executar o aplicativo no dispositivo Android com êxito, mas tente criar o arquivo build ( .apk ) e tenha problemas abaixo.

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.

Abaixo estão os materiais do projeto

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

Meu aplicativo é compatível com AndroidX e também tentei com muitas soluções, mas não consigo resolver meu problema.

Eu verifiquei
- https://github.com/roughike/flutter_twitter_login/issues/29
- Ocorreu uma falha ao executar com.android.build.gradle.internal.tasks
- flutter Erro "dependência do Android 'androidx.core: core' tem diferentes version "usando flutter_local_notifications e pacotes de localização

e outros.

Resultado do 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: Deixe-me saber se você quiser mais detalhes do meu fim.

iPatel
fonte
Qual é a versão do seu vibração
Blasanka
@Blasanka Flutter (Canal beta, v1.12.13 + hotfix.6)
iPatel
Você tentou adicionar multiDex a true, se sim, se pode tentar com o canal mestre ou estável.
Blasanka 30/12/19
@Blasanka I já definiu que pls verificar o meu build.gradle arquivo
iPatel
você pode postar o conteúdo do seu gradle.propertiesarquivo?
Harshvardhan Joshi 31/12/19

Respostas:

4

O problema é que algumas bibliotecas não são compatíveis ou não usam o androidx enquanto outras são. Graças ao google por transferir toda a lib de suporte para o androidx, agora muitas bibliotecas têm conflitos como esse e eu principalmente vou depurar em torno da qual a lib tem um problema como comentar e descomentar a lib do pubspec.

Supondo que o plugin flutter_twitter fosse o problema.

Como podemos verificar, esse plugin do twitter não usa o link AndroidX, por isso precisamos alterá-lo por conta própria.

(todas essas alterações precisam ser alteradas no plugin do twitter, não no projeto flutuante)

Eu acho que você pode alterar o gradle.properties para usar androidx e também compilar a versão para 28 gradle.properties:

android.useAndroidX=true
android.enableJetifier=true

adicione essas duas linhas, altere o caminho da classe gradle classpath 'com.android.tools.build:gradle:3.5.3' e compileSdkVersion 28em flutter_twitter. Eu sou capaz de gerar versão compilada usando esse plugin.

Ohh yah, você pode encontrar sua versão em cache do plugin em /Users/parth.dave/.pub-cache/hosted/pub.dartlang.org/flutter_twitter_login-1.1.0/algo assim, onde você pode atualizá-la. ou abra a pasta android no androidstudio e studio mostrará dois projetos app e twitter, onde você poderá atualizar essas coisas.

também às vezes é melhor abrir o projeto android no android studio e atualizar todas as coisas pelas quais você pode obter erros antes de executar os projetos de vibração.

Parth Dave
fonte
espero que isso possa resolver seu problema. comentar se não, vou tentar encontrar outra solução.
Parth Dave
Obrigado pela resposta pratik, Na verdade, acabei de criar um novo projeto em Fluter, onde "android.useAndroidX = true, android.enableJetifier = true" e compileSdkVersion 28já definido no projeto, eu apenas mudei 'com.android.tools.build:gradle:3.5.3'e tentei criar flutter build apke obtive o mesmo problema
iPatel
Não, não, eu estava falando sobre alterar as configurações do plugin do twitter e não as configurações do seu projeto.
Parth Dave
Sim .. eu tenho solução, obrigado
iPatel 6/01
5

O problema éExecution failed for task ':flutter_twitter:verifyReleaseResources'. que encontrei o link para este problema flutter_twitter_login / issue # 12

Adicione essa dependência ao seu pubspec.yamlarquivo e deixe-me saber se está funcionando ou não?

flutter_twitter_login: 
  git: git://github.com/eudangeld/flutter_twitter_login.git
AR
fonte
0

parece que a firebase_messagingversão da sua biblioteca não suporta o suporte ao AndroidX. Verifique se você atualizou a versão desta biblioteca.

dependencies:
  firebase_messaging: ^6.0.9
KumarSunil17
fonte
Estou usando o mais recente
iPatel
0

Você precisa atualizar o compileSdkVersion do módulo flutter_twitter para 28:

1 / No seu projeto de flutter, localize sua pasta "android" e abra-a como um projeto android no Android Studio.

2 / Expanda "Gradle Scripts" e aguarde o carregamento.

3 / Localize "build.gradle (módulo: flutter_twitter)"

4 / Modifique a compileSdkVersion de 27-> 28.

5 / Salve as alterações.

Minha construção funcionou depois disso. A resposta estava aqui: https://github.com/flutter/flutter/issues/32595

Florian Lavorel
fonte
0

obrigado, funcionou para mim para device_id: ^ 0.1.3 plugin em conflito com cloud_firestore: ^ 0.13.4 + 2

  1. No seu projeto de flutter, localize sua pasta "android" e abra-a como um projeto android no Android Studio.

  2. Expanda "Gradle Scripts" e aguarde o carregamento.

  3. Localize "build.gradle (Módulo: device_id)"

  4. Modifique o compileSdkVersion de 27-> 28.

  5. Salve as alterações.

Om28dz Alg
fonte