webentwicklung-frage-antwort-db.com.de

Abhängigkeit von Android Studio 3.0 kann nicht aufgelöst werden

Es ist gut, ein aktualisiertes Android Studio 3.0 zu haben. Ich habe jedoch ein Problem mit Android Studio 3.0. Ich habe gerade ein neues Projekt in Android Studio 3.0 erstellt. Dann habe ich einen Fehler bekommen

Ich löste diese Probleme, indem ich dependencies auf die neueste Version änderte und Probleme lösten.

Aber als ich eine dependency von facebook account-kit sdkcom.facebook.Android:account-kit-sdk:4.+ hinzugefügt habe

Ich erhalte folgende Fehler:

Fehler: Die Abhängigkeit für ': app @ debug/compileClasspath' kann nicht aufgelöst werden: Com.facebook.Android:account-kit-sdk:4.+ konnte nicht aufgelöst werden. Öffnen Datei
Zeige Details

build.gradle (app)

apply plugin: 'com.Android.application'

apply plugin: 'kotlin-Android'

apply plugin: 'kotlin-Android-extensions'

Android {
    compileSdkVersion 26
    defaultConfig {
        applicationId "ultimate.devil.logintest"
        minSdkVersion 15
        targetSdkVersion 26
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "Android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-Android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    implementation"org.jetbrains.kotlin:kotlin-stdlib-jre7:$kotlin_version"
    implementation 'com.Android.support:appcompat-v7:26.1.0'
    implementation 'com.Android.support.constraint:constraint-layout:1.0.2'
    compile 'com.facebook.Android:account-kit-sdk:4.+'
    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'
}

HINWEIS -:

  • Ich folge Facebook Developers Docs

  • Ich habe versucht, compile in implementation zu ändern.

  • Ich habe auch versucht, com.facebook.Android:account-kit-sdk:4.+ in com.facebook.Android:account-kit-sdk:4.11.0 und com.facebook.Android:account-kit-sdk:4.27 zu ändern, indem Sie die neueste Version von Facebook Account-Kit SDK googeln.

  • Ich habe auch StackOverFlow Answers mit möglichem Problem versucht. Aber niemand hilft mir 

Bildschirmfoto

 enter image description here

33
UltimateDevil

Nach einigen Recherchen habe ich dieses Problem gelöst.

Schritt 1-:

Ich deaktiviere die Gradle Offline-Arbeit in den Einstellungen.

Einstellungen> Abstufung> Offline-Arbeit deaktivieren

 enter image description here

Schritt 2-:

Dann habe ich gerade compile 'com.facebook.Android:account-kit-sdk:4.+' in api 'com.facebook.Android:account-kit-sdk:4.+' geändert.

Ich weiß nicht genau, warum es funktioniert. Ich sehe api in docs Referenz

Jetzt gehts :)

EDIT -

Jetzt kann ich sowohl api als auch implementation verwenden und alles funktioniert einwandfrei.

Vielen Dank,

70
UltimateDevil

Fügen Sie matchingFallbacks = ['release', 'debug'] in der buildType hinzu, die nicht kompiliert werden kann.

Z.B. Ich hatte einen Fehler für releaseStaging:

buildTypes {
    debug {
        buildConfigField "String", "CODEPUSH_KEY", '""'
    }
    releaseStaging {
        buildConfigField "String", "CODEPUSH_KEY", 'myKey'
        signingConfig signingConfigs.release
        matchingFallbacks = ['release', 'debug']
    }
    release {
        buildConfigField "String", "CODEPUSH_KEY", 'myKey'
        minifyEnabled enableProguardInReleaseBuilds
        proguardFiles getDefaultProguardFile("proguard-Android.txt"), "proguard-rules.pro"
        signingConfig signingConfigs.release
    }
}
5
Aman Agarwal

Vor gestern habe ich einen ähnlichen Fehler. Gerade gelöst hier

Wie in der letzten Gradle-Veröffentlichung notes erwähnt, sollten Sie außerdem vermeiden, dynamische Abhängigkeiten mit Versionsnummer als

com.facebook.Android:account-kit-sdk:4.+

Versuchen Sie, es durch die entsprechende Versionsnummer als 4.0.0 oder neueste zu ersetzen. Hoffe, es löst das Problem.

3
prdp89

Kurzgeschichte:

Downgrade auf Gradle 4.2.1

Lange Geschichte:

Ich verwendete Gradle Version 4.3 basierend auf der Antwort hier als diese Frage mein Fehler war. Nachdem ich diese Änderung vorgenommen hatte, begann ich mit Ihrem Problem. 

Beim Downgrade auf Version 4.2.1 ist Ihr Problem behoben. Nun muss ich zum vorherigen Problem zurückkehren.

Ich hatte auch dieses Problem während ich mein Projekt mit Android Studio 3.0 und gradle plugin 3.0.0 kompilierte

Wenn ich andere Probleme habe, werde ich die Updates hier posten

2
Ultimo_m

alle Facebook Account Kit SDK Build-Artefakte finden Sie auf Maven Central :

// https://mvnrepository.com/artifact/com.facebook.Android/account-kit-sdk
api 'com.facebook.Android:account-kit-sdk:4.35.0'

und das entsprechend hinzuzufügende Repository lautet:

repositories {
    mavenCentral()
}

Es wird davon ausgegangen, dass Gradle sich nicht im offline-Modus befindet.

2
Martin Zeitler

Ich hatte das gleiche Problem und löste es, indem ich apply plugin: 'com.Android.application' in apply plugin: 'com.Android.library' änderte.

In Bezug auf mein Problem war es ein bisschen anders als bei Ihnen. Ich habe das zweite Modul mit Android-Bibliothek und von Android-Entwicklerseite im Abschnitt "Konvertieren eines App-Moduls in ein Bibliotheksmodul". Meine Vermutung ist, dass es mit der Verwaltung von Manifest-Dateien in der Architektur zusammenhängt. Android wird also wissen, wo sich die Hauptmanifest-Datei befindet.

Und bezüglich api und implementation finden Sie die Antwort hier

Die API-Konfiguration sollte zum Deklarieren von Abhängigkeiten verwendet werden, die von der Bibliotheks-API exportiert werden, während die Implementierungskonfiguration zum Deklarieren von Abhängigkeiten verwendet werden sollte, die in der Komponente intern sind.

0
aleksandrbel

Ich hatte das gleiche Problem und habe es folgendermaßen behoben:

implementation project(path: 'com.facebook.Android:account-kit-sdk:4.+', configuration: 'default')
0
Bora Bejleri

Ein Downgrade dieser beiden Dateien löst das Problem

project`is build.gradle to 3.1.4 gradle-wrapper properties to 4.4

0
srinivas

Hatte das gleiche Problem. Nachdem Sie alles ausprobiert hatten, wurde schließlich klar, dass das Netzwerk das Synchronisieren von Abhängigkeiten nicht zuließ. Mit Hotspot ausprobiert und es hat funktioniert.

0
mansi rao

Ich löse dieses Problem, indem ich dieses Verzeichnis lösche: 

c:\Users\User name\\.gradle\caches\
0