Bagaimana cara menambahkan Repositori Dukungan Android ke Android Studio?

Saya menggunakan Android Studio dengan Android SDK eksternal. Saya telah menginstal perpustakaan dukungan dan repositori dukungan. Repositori dukungan ada di:

~/Development/Tools/android/sdk/extras/android/m2repository

Ketika saya menambahkan ketergantungan ke perpustakaan dukungan di file build.gradle, seperti:

...

repositories {
    mavenCentral()
}

...

dependencies {
   compile "com.android.support:support-v4:18.0.+"
}

Android Studio tidak dapat menemukan pustaka dukungan (tidak dapat menyelesaikan simbol, dll) dan Gradle juga tidak dapat menemukan pustaka:

Gradle: A problem occurred configuring project ':TestAndroidStudio'.
> Failed to notify project evaluation listener.
   > Could not resolve all dependencies for configuration ':TestAndroidStudio:_DebugCompile'.
      > Could not find any version that matches com.android.support:support-v4:18.0.+.
        Required by:
            TestAndroidStudio:TestAndroidStudio:unspecified

Bagaimana cara menentukan di Android Studio dan/atau file build.gradle lokasi repositori dukungan Android?


person Jaap van Hengstum    schedule 13.11.2013    source sumber
comment
Di file local.properties apakah jalur SDK benar?   -  person rciovati    schedule 13.11.2013
comment
Satu-satunya baris di file local.properties saya adalah: sdk.dir=/Users/jaap/Development/Tools/android/sdk yang merupakan jalur ke SDK eksternal.   -  person Jaap van Hengstum    schedule 13.11.2013
comment
Apakah Anda yakin Anda memiliki perpustakaan dukungan versi 18? Sekarang jam 19.   -  person rciovati    schedule 13.11.2013
comment
Siapa pun yang tiba di sini karena gagal menambahkan pernyataan 'kompilasi' ke build.gradle perhatikan bahwa ada DUA file build.gradle, dan kompilasi harus ditambahkan ke bagian dependensi dari file yang tidak memiliki bagian dependensi (yang memiliki targetSdkVersion = x dll )   -  person Lorne K    schedule 19.04.2018


Jawaban (6)


Anda mungkin terkena bug ini yang mencegah Android Gradle Plugin untuk secara otomatis menambahkan "Repositori Dukungan Android" ke daftar repositori Gradle. Solusinya, seperti yang disebutkan dalam laporan bug, adalah menambahkan direktori m2repository secara eksplisit sebagai direktori Maven lokal di file build.gradle tingkat atas sebagai berikut:

allprojects {
    repositories {
        // Work around https://code.google.com/p/android/issues/detail?id=69270.
        def androidHome = System.getenv("ANDROID_HOME")
        maven {
            url "$androidHome/extras/android/m2repository/"
        }
    }
}
person sschuberth    schedule 18.08.2014
comment
Saya menambahkan lib ke artefak pakar lokal kami, sehingga berfungsi untuk semua orang. - person philipp; 01.11.2014
comment
Itu seharusnya tidak diperlukan lagi karena setidaknya saya tidak dapat mereproduksi bug tersebut lagi dengan plugin Android terbaru dan alat pembuatan (lihat juga komentar saya untuk bug asli). - person sschuberth; 01.11.2014
comment
Ini memecahkan masalah lain: menambahkan dukungan anotasi Android (mis. @NonNull) ke lib java aplikasi Android. - person DenisGL; 20.07.2016
comment
masih mengalami hal ini setelah upgrade ke Android Studio 2.3.. adakah info apa penyebab dan bagaimana mekanisme hook in bekerja di Android studio?! satu-satunya hal yang dapat saya konfirmasi: Saya dapat memperbaikinya hanya dengan uninstall lalu instal ulang repositori dukungan melalui manajer SDK..tidak ada lem mengapa ini membantu bahkan file yang ada dan diinstal ulang lagi sama persis - person childno͡.de; 03.04.2017

Gradle dapat bekerja dengan notasi 18.0.+, namun sekarang bergantung pada repositori dukungan baru yang kini dipaketkan dengan SDK.

Buka manajer SDK dan tepat di bawah Ekstra, opsi pertama adalah "Repositori Dukungan Android" dan instal

person ngatirauks    schedule 25.11.2013
comment
Pastikan juga Alat SDK Android Anda diperbarui dan pertimbangkan untuk menggunakan 19.0.+ karena ini adalah yang terbaru. - person Michael Barany; 26.11.2013
comment
developer.android diperingatkan agar tidak menggunakan + pada nomor versi di dokumen ini dan banyak tempat lainnya. - person AaA; 06.07.2017

Menemukan solusi.

1) Pergi ke lokasi SDK Anda yang digunakan Android studio/Eclipse. Jika Anda menggunakan Android studio, buka extras\android\m2repository\com\android\support\. Jika Anda menggunakan gerhana, buka \extras\android\support\

2) Lihat folder apa yang Anda miliki, bagi saya saya memiliki gridlayout-v7, support-v4 dan support-v13.

3) klik ke support-v4 dan lihat nomor folder berikut ini, folder saya bernama 13.0

Karena Anda menggunakan "com.Android.support:support-v4:18.0.+", ubah ini untuk mencerminkan versi yang Anda miliki, misalnya saya memiliki support-v4 jadi bagian pertama v4 tetap sama. Karena jalur berikutnya adalah 13.0, ubah 18.0 Anda menjadi:

"com.android.support:support-v4:13.0.+"

Ini berhasil untuk saya, semoga membantu!

Memperbarui:

Saya perhatikan saya telah menyiapkan studio Android dengan SDK yang salah, itulah sebabnya awalnya mengalami kesulitan dalam memperbarui! Jalurnya harus C:\Users\Username\AppData\Local\Android\android-sdk\extras\

Perhatikan juga, jika SDK Anda mutakhir, kodenya akan menjadi:

"com.android.support:support-v4:19.0.+"
person escull638    schedule 24.12.2013
comment
Terima kasih. Saya agak buntu juga karena di repositori maven online, perpustakaan dukungannya ada di bawah com.google.android, tapi ini di bawah com.android.support. - person joe_deniable; 01.01.2014
comment
Butuh waktu berjam-jam bagi saya untuk mencari tahu! Ternyata itu hanya perubahan sederhana haha, ada baiknya kamu sudah beres! - person escull638; 03.01.2014
comment
Folder SDK saya ada di drive E (C adalah SSD) dan [SDK]\extras\android\m2repository\com\android\support\support-v4 berisi nomor folder mulai dari 13.0.0 hingga 26.0.0-alpha1 (38 Folder), repo masih belum dapat diakses. - person AaA; 06.07.2017
comment
developer.android telah memperingatkan agar tidak menggunakan + pada nomor versi di dokumen ini - person AaA; 06.07.2017

Android Studio 3

Pastikan Anda memiliki Android Studio versi terbaru. Pustaka dukungan disertakan secara default saat Anda membuat proyek baru. Jika Anda menambahkan Pustaka Dukungan ke proyek yang tidak memilikinya, Anda hanya perlu menambahkan satu baris ke file build.gradle modul aplikasi Anda, lalu menyinkronkan gradle.

membangun.gradle

dependencies {
    ...
    implementation 'com.android.support:appcompat-v7:27.1.1'
} 

Seharusnya semudah itu, meskipun ada beberapa hal yang perlu diperhatikan:

  • Android Studio akan memberi Anda peringatan saat ini jika pustaka dukungan perlu diperbarui. Cukup perbarui nomor 27.1.1 yang saya miliki di sini sesuai perintahnya. Anda juga dapat memeriksa secara manual revisi terbaru jika Anda ingin.
  • Kata kunci implementation menggantikan compile yang digunakan di Android Studio 2.x. (Apa bedanya?)
  • Ada paket pustaka dukungan lain yang mungkin perlu Anda sertakan bergantung pada apa yang digunakan aplikasi Anda (seperti constraint-layout atau recyclerview).
  • Pastikan Anda memiliki pembaruan terkini untuk semua yang ada di SDK Manager. Buka Alat › Manajer SDK.

Dokumentasi

person Suragch    schedule 18.05.2015

Saya pernah mengalami masalah serupa. Bahkan setelah menginstal repositori dukungan, build tersebut biasanya gagal.

Pada dasarnya masalahnya adalah karena nomor versi file jar yang ditentukan dalam file gradle ditentukan dengan benar.

Misalnya, dalam kasus saya, saya telah menetapkannya sebagai "kompilasi 'com.android.support:support-v4:21.0.3+'"

Saat menghapus "+" build berhasil!!

person Vjay    schedule 12.01.2015
comment
developer.android telah memperingatkan agar tidak menggunakan + pada nomor versi di dokumen ini - person AaA; 06.07.2017

Daripada melakukan ini:

compile "com.android.support:support-v4:18.0.+"

Melakukan hal ini:

compile 'com.android.support:support-v4:18.0.+' 

Bekerja untuk saya

person James Brotherhood    schedule 10.09.2018