nie udało się znaleźć celu z ciągiem skrótu android-23

94

Podczas próby zbudowania OpenStreetMapView z git: //github.com/osmdroid/osmdroid, pojawia się ten błąd:

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

Jak mogę to naprawić? Poprzednie pytania podobne do tego sugerują sprawdzenie, czy Android 23 nie jest zainstalowany, ale w moim przypadku tak jest.

Poniżej znajduje się kilka istotnych informacji:

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

D:\Users\myusername\AppData\Local\Android\sdk\platforms\ zawiera katalog \ android-23 \, (a także 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'
}

Próbowałem zmienić targetSdkVersion i compileSdkVersion na 22. To powoduje, że komunikat o błędzie zmienia się na „android-22” zamiast „android-23”.

Menedżer SDK: wprowadź opis obrazu tutaj

Al Lelopath
źródło

Odpowiedzi:

79

W moim przypadku czyszczenie caché nie działało.

W Menedżerze SDK, pamiętaj, aby zaznaczyć pole „pokaż opisy pakietów” ; następnie należy również wybrać „interfejsy API Google” dla wersji, którą chcesz zainstalować.

Zainstaluj go i wszystko powinno być w porządku

htafoya
źródło
2
To zadziałało. Musiałem pobrać narzędzia do kompilacji po zakończeniu działania menedżera SDK, ale zdecydowanie nie trzeba było usuwać folderu .gradle ani unieważniać pamięci podręcznej.
Bill Mote
Dziękuję Ci! Działa dobrze.
carlodonz
22

W Android Studio File -> Invalidate Caches/Restartrozwiązałem problem za mnie.

Mohammed Ali
źródło
1
To tylko poprawa odpowiedzi @AlLelopath.
Mohammed Ali,
18

Odpowiedź na to pytanie .

Gradle robi się głupi od czasu do czasu i wyczyszczenie pamięci podręcznej jest jedynym rozwiązaniem, jakie znalazłem. Znajdziesz ukryty folder .gradle w folderze domowym użytkownika i inny, gdziekolwiek lokalizacja kasy jest dla osmdroid.

Al Lelopath
źródło
3
Usunąłem foldery, przywróciłem i nadal mam problem
htafoya
13

Rozwiązałem ten problem, otwierając Menedżera Android SDK i instalując narzędzia do kompilacji dla wszystkich wersji 23.xx.

Zobacz zrzut ekranu.

wprowadź opis obrazu tutaj

Radmacja
źródło
Zrobiło to! (używając Deco na Macu) Dzięki!
JeremyF
5

Uwaga: myślę, że to może być błąd w Android Studio.

  1. Przejdź do struktury projektu
  2. Wybierz moduł aplikacji
  3. W pierwszej zakładce „Właściwości” zmień wersję Compile SDK na API XX z Google API xx (np. API 23 zamiast Google API 23)
  4. wciśnij OK
  5. Poczekaj na zakończenie trwającego procesu, w moim przypadku w tym momencie nie pojawił się błąd.

Teraz przywróć skompilowaną wersję Sdk z powrotem do Google API xx.

Jeśli to nie zadziała, to:

  1. Z Google API (Google API xx zamiast API xx) obniż wersję narzędzia do budowania (np. Google API 23 i narzędzie do budowania w wersji 23.0.1)
  2. Naciśnij Ok i poczekaj na zakończenie trwającego procesu
  3. Przywróć wersję narzędzia kompilacji do stanu sprzed zmiany
  4. Wciśnij OK
  5. Zaczekaj na zakończenie procesu.
  6. Gotowe!
Sagar Patel
źródło
3

Podążanie za tymi zalecanymi wskazówkami wydawało się działać:

Wskazówka: otwórz menedżera SDK, uruchamiając: / path / to / android / tools / android

Będziesz potrzebować: 1. „Platformy SDK” dla systemu Android-23 2. „Narzędzia platformy Android SDK (najnowsze) 3.„ Narzędzia do tworzenia zestawu SDK systemu Android ”(najnowsze)

Geremy
źródło
3

Miałem ten sam problem z innym numerem, to działało dla mnie:

  1. Kliknij komunikat o błędzie u góry „Synchronizacja projektu Gradle nie powiodła się”, gdzie tekst mówi „Otwórz widok wiadomości”

  2. W oknie „Message Gradle Sync” w lewym dolnym rogu kliknij dostarczone rozwiązanie „Brak instalacji ...”

  3. W razie potrzeby powtórz czynności 1 i 2

23:08 Synchronizacja Gradle nie powiodła się: nie można znaleźć celu z ciągiem skrótu „android-26” w: C: \ Users \ vik \ AppData \ Local \ Android \ Sdk

Android SDK zapewniający rozwiązanie w lewym dolnym rogu Android SDK zapewniający rozwiązanie w lewym dolnym rogu

ViktorMS
źródło
Dodaj więcej informacji w przypadku, gdy link do obrazu zniknie, aby inni mogli podążać za odpowiedzią nawet po śmierci łącza.
Dessus
2

U mnie zadziałało, zmieniając compileSdkVersionna 24 i targetSdkVersion24 i zmieniając compilenacom.android.support:appcompat-v7:24.1.0

Akshat Gupta
źródło
2

Istnieją 2 rozwiązania tego problemu:

1) Pobierz odpowiedni zestaw SDK dla systemu Android za pośrednictwem opcji Narzędzia -> Android -> Menedżer SDK -> Narzędzia SDK (upewnij się, że zaznaczono opcję „Pokaż szczegóły pakietu”). Twój przypadek to Android 6.0 (Marshmallow / API poziom 21)

2) Alternatywnie otwórz build.gradleplik i zaktualizuj następujące atrybuty:

  • compileSdkVersion
  • buildToolsVersion
  • targetSdkVersion

albo do najnowszej wersji API systemu Android, którą zainstalowałeś / innej zainstalowanej wersji, z której chcesz korzystać (chociaż zawsze polecam korzystanie z najnowszej wersji z typowych powodów: poprawki błędów itp.)

Jeśli wykonujesz krok 2, pamiętaj również o zaktualizowaniu wersji biblioteki obsługi Androida, jeśli Twoja aplikacja z niej korzysta. Można to znaleźć w dependenciessekcji pliku kompilacji i wygląda mniej więcej tak:

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

(zastąp 27.0.2najnowszą wersją biblioteki pomocy technicznej dla poziomu interfejsu API, którego zamierzasz używać z aplikacją)

Scott Barbour
źródło
1

Otwórz Menedżera Android SDK i zaktualizuj najnowszą wersję.

Biswajit Karmakar
źródło
1

Nic nie działało dla mnie. Zmieniłem ścieżkę SDK na nową lokalizację SDK i ponownie zainstalowałem SDK, działa idealnie.

user1035292
źródło
1

Narzędzia> Android> Menedżer SDK.

wprowadź opis obrazu tutaj

CoolMind
źródło
Zwykle nie jestem fanem zwięzłych odpowiedzi, ale jest to pięknie zrobione. Rozwiązałem wszystko dla mnie.
Le Mot Juiced
Dzięki, @LeMotJuiced.
CoolMind
1

Miałem ten problem podczas korzystania z systemu Windows. Okazało się, że problemem była lokalizacja SDK w moich profilach. Musiałem więc przenieść folder SDK do dokumentów, a potem zadziałało.

user3288482
źródło
1

Mój narzekał na 26. Zajrzałem do swoich folderów i znalazłem folder na 27, ale nie na 26. Więc zmodyfikowałem plik build.gradle, zastępując 26 na 27. compileSdkVersion, targetSdkVersion i implementację (zmieniłem te liczby na v: 7 : 27.02). To zmieniło mój komunikat o błędzie. Następnie dodałem buildToolsVersion "27.0.3" do sekcji nawiasów Androida tuż pod compileSdkVersion.

Teraz przycisk tworzenia projektu działa z 0 wiadomościami.

Następnie, jak właściwie wybrać moduł w mojej konfiguracji, abym mógł to uruchomić.

Neo42
źródło
1

Dla mnie problem polegał na tym, że napisałem compileSdkVersion '23' zamiast 23. Cudzysłowy były problemem.

konnovdev
źródło
1

Pobierz określone wydanie systemu Android z linku określonego w konsoli kompilacji.

KayV
źródło
1

Ten poblem jest rozwiązany za mną poRun as administratorAndorid Studio

PurTahan
źródło
0

Problem jest spowodowany tym, że kod, który uruchamiasz, został utworzony na starszym poziomie interfejsu API, a Twój obecny Menedżer SDK nie obsługuje ich uruchamiania. Spróbuj więc wykonać następujące czynności; 1. Zainstaluj Menedżera SDK, który obsługuje poziom API 23. Przejdź do> Menedżer SDK,> SDK Android, a następnie wybierz API 23 i zainstaluj. 2. drugą alternatywą jest zaktualizowanie modułu aplikacji build.grade w celu zmiany wartości compileSdkVersion, compile i innych na aktualnie obsługiwany poziom interfejsu API.

Uwaga: upewnij się, że sprawdziłeś numery API i wersji i dokładnie je zmień. w przeciwnym razie Twój projekt nie zostanie zsynchronizowany

Kose
źródło
0

Upewnij się, że IDE rozpoznaje, że masz pakiet. Nie u mnie nawet po pobraniu 28, więc odinstalowałem go, a następnie ponownie zainstalowałem po zdaniu sobie sprawy, że nie jest wyświetlany w aplikacji File-Project Structure-Modules jako opcja dla SDK.

Ponadto możesz zmienić ścieżkę kompilacji, aby pasowała.

Nieco powiązane, najnowsze aktualizacje wydają się być w stanie się skompilować, gdy wymusiłem aktualizację aż do 28 dla CompileSDK, a nie tylko do nowego wymagania API 26 minut z Google Play. Jest to jednak związane z zależnościami i może nie wpływać na twoje

Stephen J.
źródło