Wykonanie nie powiodło się dla zadania „: flutter_twitter: VeritReleaseResources”

9

Pracuję nad aplikacją Flutter . Mogę pomyślnie uruchomić aplikację na urządzeniu z Androidem, ale spróbuj utworzyć plik kompilacji ( .apk ) i mam poniższe problemy.

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.

Poniżej znajdują się elementy projektu

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

Moja aplikacja jest kompatybilna z AndroidX, a także wypróbowałem wiele rozwiązań, ale nie mogę rozwiązać problemu.

Sprawdziłem
- https://github.com/roughike/flutter_twitter_login/issues/29
- Wystąpił błąd podczas wykonywania com.android.build.gradle.internal.tasks
- trzepot Błąd „Zależność Androida” androidx.core: core ”ma inny wersja ”przy użyciu flutter_local_notifications i pakietów lokalizacji

i inni.

Wynik 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: Daj mi znać, jeśli chcesz więcej szczegółów z mojego końca.

iPatel
źródło
Jaka jest wersja twojego trzepotania
Blasanka
@Blasanka Flutter (Channel beta, v1.12.13 + hotfix.6)
iPatel
Czy próbowałeś dodać multiDex do prawdy, jeśli tak, jeśli możesz spróbować z kanałem głównym lub stabilnym.
Blasanka
@Blasanka Ustawiłem już, że proszę sprawdzić mój plik build.gradle
iPatel
czy możesz opublikować zawartość swojego gradle.propertiespliku?
Harshvardhan Joshi

Odpowiedzi:

4

Problemem jest to, że niektóre biblioteki nie są kompatybilne lub nie używają Androidax, podczas gdy inne są. Dzięki Google za przeniesienie całej biblioteki wsparcia na Androidx, teraz wiele bibliotek ma takie konflikty i przeważnie przechodzę do debugowania, w którym lib ma problem z komentowaniem i odkomentowaniem biblioteki lib z pubspec.

Zakładając, że wtyczka flutter_twitter była problemem.

Jak możemy to sprawdzić, ta wtyczka Twittera nie używa linku AndroidX, więc musimy to zmienić.

(wszystkie te zmiany należy zmienić we wtyczce Twittera, a nie w projekcie flutter)

Myślę, że możesz zmienić gradle.properties, aby używać Androidax, a także skompilować wersję do 28 gradle.properties:

android.useAndroidX=true
android.enableJetifier=true

dodaj te dwie linie, zmień ścieżkę klasy stopnia classpath 'com.android.tools.build:gradle:3.5.3' i compileSdkVersion 28we flutter_twitter. Jestem w stanie wygenerować kompilację wersji przy użyciu tej wtyczki.

Och, tak, możesz znaleźć wersję wtyczki z pamięci podręcznej w /Users/parth.dave/.pub-cache/hosted/pub.dartlang.org/flutter_twitter_login-1.1.0/czegoś takiego, gdzie możesz ją zaktualizować. lub albo otwórz folder Androida w Androidstudio i studio pokaże Ci dwie projekty aplikacji i Twittera, gdzie możesz zaktualizować te rzeczy.

Czasami lepiej jest otworzyć projekt Androida w Android Studio i zaktualizować wszystkie rzeczy, które mogą powodować błędy przed uruchomieniem projektów trzepotania.

Parth Dave
źródło
mam nadzieję, że to rozwiąże problem. skomentuj, jeśli nie, postaram się znaleźć inne rozwiązanie.
Parth Dave
Dzięki za odpowiedź pratik, właściwie właśnie stworzyłem nowy projekt we Fluter, w którym „android.useAndroidX = true, android.enableJetifier = true” i compileSdkVersion 28już ustawiony w projekcie, a ja po prostu zmieniłem się 'com.android.tools.build:gradle:3.5.3'i próbowałem dokonać kompilacji flutter build apki dostałem ten sam problem
iPatel
Nie nie, mówiłem o zmianie ustawień wtyczki Twittera, a nie ustawień projektu.
Parth Dave
Tak .. Mam rozwiązanie, dziękuję
iPatel
5

Problem polegaExecution failed for task ':flutter_twitter:verifyReleaseResources'. na tym, że znalazłem link do tego problemu flutter_twitter_login / issue # 12

Dodaj tę zależność do swojego pubspec.yamlpliku i daj mi znać, czy działa, czy nie?

flutter_twitter_login: 
  git: git://github.com/eudangeld/flutter_twitter_login.git
AR
źródło
0

wygląda na to, że twoja firebase_messagingwersja biblioteki nie obsługuje AndroidaX. Upewnij się, że masz zaktualizowaną wersję tej biblioteki.

dependencies:
  firebase_messaging: ^6.0.9
KumarSunil17
źródło
Korzystam z najnowszej wersji
iPatel,
0

Musisz zaktualizować compileSdkVersion modułu flutter_twitter do 28:

1 / W swoim projekcie trzepotania zlokalizuj folder „android” i otwórz go jako projekt Android w Android Studio.

2 / Rozwiń „Skrypty stopniowe” i poczekaj, aż się załaduje.

3 / Znajdź „build.gradle (moduł: flutter_twitter)”

4 / Zmodyfikuj compileSdkVersion z 27-> 28.

5 / Zapisz zmiany.

Moja wersja działała potem. Odpowiedź była tutaj: https://github.com/flutter/flutter/issues/32595

Florian Lavorel
źródło
0

dziękuję, zadziałało dla mnie dla device_id: ^ 0.1.3 plugin conflit z cloud_firestore: ^ 0.13.4 + 2

  1. W swoim projekcie trzepotania zlokalizuj folder „android” i otwórz go jako projekt Androida w Android Studio.

  2. Rozwiń „Skrypty stopniowe” i poczekaj, aż się załaduje.

  3. Zlokalizuj „build.gradle (Module: device_id)”

  4. Zmodyfikuj compileSdkVersion z 27-> 28.

  5. Zapisz zmiany.

Om28dz Alg
źródło