Ziel mit Hash-String android-23 konnte nicht gefunden werden

94

Beim Versuch, OpenStreetMapView aus git: //github.com/osmdroid/osmdroid zu erstellen, wird folgende Fehlermeldung angezeigt:

failed to find target with hash string android-23: D:\Users\myusername\AppData\Local\Android

Wie kann ich das beheben? Frühere ähnliche Fragen schlagen vor, zu überprüfen, ob Android 23 nicht installiert ist, in meinem Fall jedoch.

Nachfolgend finden Sie einige relevante Informationen:

ANDROID_HOME ist D:\Users\myusername\AppData\Local\Android\sdk

D:\Users\myusername\AppData\Local\Android\sdk\platforms\ enthält das Verzeichnis \ android-23 \ (sowie android-19, android-21, android-22, android-MNC)

build.gradle

apply plugin: 'com.android.application'

android {
    compileSdkVersion 23
    buildToolsVersion "23.0.1"

    defaultConfig {
        applicationId "org.osmdroid.example"
        minSdkVersion 8
        targetSdkVersion 23
        versionCode 16
        versionName "4.4-SNAPSHOT"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
    packagingOptions {
        exclude 'META-INF/LICENSE'
        exclude 'META-INF/DEPENDENCIES'
        exclude 'META-INF/NOTICE'

    }
    lintOptions {
        abortOnError false
    }
}


dependencies {
    compile 'android.support:compatibility-v4:23+'
    compile project(':osmdroid-android')
    //compile 'org.osmdroid:osmdroid-third-party:4.4-SNAPSHOT'
}

Ich habe versucht, targetSdkVersion und compileSdkVersion auf 22 zu ändern. Dadurch wird die Fehlermeldung in "android-22" anstelle von "android-23" geändert.

SDK Manager: Geben Sie hier die Bildbeschreibung ein

Al Lelopath
quelle

Antworten:

79

In meinem Fall hat das Löschen des Caché nicht funktioniert.

Aktivieren Sie im SDK-Manager das Kontrollkästchen "Paketbeschreibungen anzeigen" . Dann sollten Sie auch die "Google APIs" für die Version auswählen, die Sie installieren möchten.

Installieren Sie es und dann sollten Sie in Ordnung sein

htafoya
quelle
2
Das hat funktioniert. Musste die Build-Tools herunterladen, nachdem der SDK-Manager fertig war, musste aber definitiv nicht den .gradle-Ordner löschen oder den Cache ungültig machen.
Bill Mote
Danke dir! Hat gut funktioniert.
Carlodonz
22

In Android Studio wurde File -> Invalidate Caches/Restartdas Problem für mich gelöst.

Mohammed Ali
quelle
1
Es ist nur eine Verbesserung der Antwort von @AlLelopath.
Mohammed Ali
18

Die Antwort auf diese Frage .

Gradle wird von Zeit zu Zeit dumm und das Löschen des Caches ist die einzige Lösung, die ich gefunden habe. Sie finden einen versteckten .gradle-Ordner unter Ihrem Benutzer-Home-Ordner und einen anderen, wo immer sich der Checkout-Speicherort für osmdroid befindet.

Al Lelopath
quelle
3
Ich habe die Ordner gelöscht, neu gespeichert und es hat immer noch das Problem
htafoya
13

Ich habe das Problem für mich behoben, indem ich den Android SDK Manager geöffnet und die Build-Tools für alle 23.xx-Versionen installiert habe.

Siehe den Screenshot.

Geben Sie hier die Bildbeschreibung ein

Radmation
quelle
Das hat es geschafft! (mit Deco auf dem Mac) Danke!
JeremyF
5

Hinweis: Ich denke, dies könnte ein Fehler in Android Studio sein.

  1. Gehen Sie zur Projektstruktur
  2. Wählen Sie App Module
  3. Ändern Sie unter der ersten Registerkarte "Eigenschaften" die Compile SDK-Version von Google API xx in API XX (z. B. API 23 anstelle von Google API 23).
  4. drücke OK
  5. Warten Sie, bis der laufende Prozess abgeschlossen ist. In meinem Fall wurde zu diesem Zeitpunkt kein Fehler angezeigt.

Setzen Sie nun die kompilierte Sdk-Version wieder auf die Google API xx zurück.

Wenn dies nicht funktioniert, dann:

  1. Verringern Sie mit der Google-API (Google API xx anstelle von API xx) die Build-Tool-Version (z. B. Google API 23 und Build-Tool-Version 23.0.1).
  2. Drücken Sie OK und warten Sie, bis der laufende Vorgang abgeschlossen ist
  3. Setzen Sie Ihre Build-Tool-Version auf den Stand vor Ihrer Änderung zurück
  4. Drücke OK
  5. Warten Sie, bis der Vorgang abgeschlossen ist.
  6. Getan!
Sagar Patel
quelle
3

Das Befolgen dieser empfohlenen Anweisungen schien zu funktionieren:

Tipp: Öffnen Sie den SDK-Manager, indem Sie: / path / to / android / tools / android ausführen

Sie benötigen: 1. "SDK Platform" für Android-23 2. "Android SDK Platform-Tools (neueste Version) 3." Android SDK Build-Tools "(neueste Version)

Geremy
quelle
3

Hatte das gleiche Problem mit einer anderen Nummer, das hat bei mir funktioniert:

  1. Klicken Sie oben auf die Fehlermeldung "Gradle-Projektsynchronisierung fehlgeschlagen", in der der Text "Offene Nachrichtenansicht" lautet

  2. Klicken Sie im Fenster "Message Gradle Sync" in der unteren linken Ecke auf die bereitgestellte Lösung "Installation fehlt ...".

  3. Wiederholen Sie gegebenenfalls 1 und 2

23:08 Gradle-Synchronisierung fehlgeschlagen: Ziel mit Hash-Zeichenfolge 'android-26' konnte nicht gefunden werden in: C: \ Users \ vik \ AppData \ Local \ Android \ Sdk

Android SDK bietet eine Lösung in der unteren linken Ecke Android SDK bietet eine Lösung in der unteren linken Ecke

ViktorMS
quelle
Bitte fügen Sie weitere Informationen hinzu, falls Ihr Bildlink verschwindet, damit andere der Antwort folgen können, auch wenn der Link nicht mehr funktioniert.
Dessus
2

Es funktionierte für mich, indem ich compileSdkVersionzu 24 und targetSdkVersionzu 24 wechselte und compilezu wechseltecom.android.support:appcompat-v7:24.1.0

Akshat Gupta
quelle
2

Für dieses Problem gibt es zwei Lösungen:

1) Laden Sie das entsprechende Android SDK über Tools -> Android -> SDK Manager -> SDK Tools herunter (stellen Sie sicher, dass "Paketdetails anzeigen" aktiviert ist). Ihr Fall wäre Android 6.0 (Marshmallow / API Level 21)

2) Öffnen Sie alternativ Ihre build.gradleDatei und aktualisieren Sie die folgenden Attribute:

  • compileSdkVersion
  • buildToolsVersion
  • targetSdkVersion

entweder auf die neueste Version der Android-API, die Sie installiert haben, oder auf eine andere installierte Version, die Sie verwenden möchten (obwohl ich aus den üblichen Gründen immer empfehlen würde, die neueste Version zu verwenden: Fehlerkorrekturen usw.)

Wenn Sie Schritt 2 ausführen, ist es auch wichtig, dass Sie daran denken, die Version der Android-Supportbibliothek zu aktualisieren, wenn Ihre App sie verwendet. Dies befindet sich im dependenciesAbschnitt Ihrer Build-Datei und sieht ungefähr so ​​aus:

compile 'com.android.support:appcompat-v7:27.0.2'

(Ersetzen 27.0.2Sie die API-Ebene, die Sie mit Ihrer App verwenden möchten, durch die neueste Version der Support-Bibliothek.)

Scott Barbour
quelle
1

Öffnen Sie den Android SDK Manager und aktualisieren Sie ihn mit dem neuesten Stand.

Biswajit Karmakar
quelle
1

Bei mir hat nichts funktioniert. Ich habe den SDK-Pfad in einen neuen SDK-Speicherort geändert und SDK neu installiert. Es funktioniert einwandfrei.

user1035292
quelle
1

Extras> Android> SDK Manager.

Geben Sie hier die Bildbeschreibung ein

CoolMind
quelle
Ich bin normalerweise kein Fan der knappen Antwort, aber das ist wunderschön gemacht. Alles für mich gelöst.
Le Mot Juiced
Danke, @LeMotJuiced.
CoolMind
1

Ich hatte dieses Problem bei der Verwendung von Windows. Es stellte sich heraus, dass der SDK-Speicherort in meinen Profilen das Problem war. Also musste ich meinen SDK-Ordner in Dokumente verschieben und dann funktionierte es.

user3288482
quelle
1

Meins beschwerte sich über 26. Ich habe in meinen Ordnern nach einem Ordner für 27 gesucht, aber nicht für 26. Also habe ich meine build.gradle-Datei geändert und 26 durch 27 ersetzt. CompileSdkVersion, targetSdkVersion und Implementierung (diese Nummern wurden in v: 7 geändert : 27.02). Das hat meine Fehlermeldung geändert. Dann habe ich buildToolsVersion "27.0.3" zum Android-Klammerabschnitt direkt unter compileSdkVersion hinzugefügt.

Jetzt funktioniert die Schaltfläche Projekt erstellen mit 0 Nachrichten.

Als nächstes, wie man tatsächlich ein Modul in meiner Konfiguration auswählt, damit ich es ausführen kann.

Neo42
quelle
1

Für mich bestand das Problem darin, dass ich compileSdkVersion '23' anstelle von 23 schrieb. Die Anführungszeichen waren das Problem.

konnovdev
quelle
1

Laden Sie die spezifische Android-Version über den in der Build-Konsole angegebenen Link herunter.

KayV
quelle
1

Dieses Problem ist für mich nach Run as administratordem gelöstAndorid Studio

PurTahan
quelle
0

Das Problem wird dadurch verursacht, dass der von Ihnen ausgeführte Code auf einer älteren API-Ebene erstellt wurde und Ihr aktueller SDK-Manager die Ausführung nicht unterstützt. Versuchen Sie also Folgendes: 1.Installieren Sie den SDK-Manager, der API-Level 23 unterstützt. Gehen Sie zu> SDK-Manager> Android SDK, wählen Sie API 23 aus und installieren Sie. 2. Die zweite Alternative besteht darin, das App-Modul build.grade zu aktualisieren, um compileSdkVersion, compile und andere Nummern auf Ihre derzeit unterstützte API-Ebene zu ändern.

Hinweis: Bitte überprüfen Sie die API- und Revisionsnummern und ändern Sie sie genau. Andernfalls wird Ihr Projekt nicht synchronisiert

Kose
quelle
0

Stellen Sie sicher, dass die IDE erkennt, dass Sie das Paket haben. Es war auch nach dem Herunterladen von 28 nicht bei mir, also habe ich es deinstalliert und dann neu installiert, nachdem ich festgestellt hatte, dass es nicht unter File-Project Structure-Modules-App als Auswahl für SDK angezeigt wurde.

Darüber hinaus möchten Sie möglicherweise Ihren Erstellungspfad entsprechend ändern.

Die neuesten Updates scheinen in der Lage zu sein, kompiliert zu werden, als ich ein Update für CompileSDK auf 28 erzwang, und nicht nur bis zur neuen API-26-Minuten-Anforderung von Google Play. Dies hängt jedoch mit Abhängigkeiten zusammen und hat möglicherweise keine Auswirkungen auf Ihre

Stephen J.
quelle