Android Studio: bagaimana cara melampirkan sumber Android SDK?

111

Bagaimana cara melampirkan sumber Android SDK ke Android Studio?

Ketika saya membuka salah satu kelas Android, jendela "Sumber tidak ditemukan" dengan opsi "Lampirkan Sumber" tidak muncul.

Apa cara lain untuk melakukan ini?

Lukas Fryc
sumber

Jawaban:

66

Buka pengelola sdk Anda dari menu toolbar dan unduh "Sumber untuk Android SDK" untuk level API yang ditentukan dalam file build.gradle Anda seperti

compileSdkVersion 19 // compile with API level 19

Tidak ada lagi yang perlu dilakukan.

Catatan: Sumber untuk SDK hanya tersedia untuk API level 14 dan di atasnya.

UPDATE (Berdasarkan rilis stabil 3.2.1):

Google mengubah pendekatan pengiriman sumber, jadi mari kita lihat apa yang berubah.

Pergi ke lokasi berikut

Preferences -> Apperance & Behaviour -> System Settings -> Android SDK

Cukup malas untuk navigasi ketik SDKpencarian dan studio akan membantu Anda untuk mengambil tempat yang tepat.

masukkan deskripsi gambar di sini

Anda dapat membaca deskripsi, sebagian besar mengatakan apa yang harus dilakukan. Jadi setelah mengklik "tampilkan detail paket" Anda akan melihat apakah sumber diinstal atau tidak (seperti yang ditunjukkan pada gambar di bawah) jika tidak diinstal, lakukan instal dan Anda baik-baik saja.

masukkan deskripsi gambar di sini

pyus13
sumber
1
@takumar, ini karena sumber SDK saat ini tidak tersedia untuk Android API 20. Saya yakin ketika Android "L" keluar dari pratinjau, sumber akan tersedia di pengelola SDK.
Dick Lucas
37
Setelah mengunduh sumber, saya perlu memulai ulang Android Studio agar berfungsi
Sathesh
3
Jika Anda men-debug pada versi yang lebih lama dari compileSdkVersion, kode sumber tidak akan cocok.
David
Saya akan menambahkan komentar Sathesh ke solusinya. Sepertinya banyak yang harus restart, saya juga.
Ferran Maylinch
Anda perlu mencentang kotak "Show Package Details" untuk menemukan entri "Sources for Android ..."
Flimm
247

Pelaporan Android Studio 3.2.1 di: memecahkan masalah dengan menyetel ulang SDK.

Preferensi -> Penampilan & Perilaku -> Pengaturan Sistem -> SDK Android.

Klik Edit di sebelah kanan lokasi Android SDK. Selanjutnya, Selanjutnya, Selesai untuk menyelesaikan wizard dan voila!

Alexander Mayatsky
sumber
3
@ 0xF File / Pengaturan untuk Windows (Linux?), Preferensi untuk Mac. Penambahan Penampilan & Perilaku, terima kasih banyak. Merindukan itu sepenuhnya.
Alexander Mayatsky
1
@AlexanderMayatsky File / Settings ada di Linux.
0xF
2
di Linux:File -> Settings -> Appearance&Behavior -> System Settings -> Android SDK
lenooh
2
Mengalami masalah yang sama saat dokumentasi tidak ditampilkan. Ini menyelesaikannya untuk versi stabil terbaru yaitu 3.1.4.
Tantangan
Ini tidak berhasil untukku. Saya telah mengunduh sumber untuk compileSdkVersion 28 dan build.gradle saya juga memiliki targetSdkVersion 28, dan ketika saya menjalankan aplikasi saya di debugger, saya dapat melihat segala macam hal seperti art::ArtMethod::Invokedan StartBackgroundThread(ini untuk utas pembantu JNI di aplikasi saya) tetapi mengklik apa pun di bagian Android dari tumpukan tidak menampilkan file sumber terkait. Apa yang saya lewatkan?
kbro
32

Saya tidak dapat menemukan opsi gui yang disebutkan di atas di v8.11 di osx, tetapi grep-fu memberi tahu saya:

config disimpan di ~ / Library / Preferences / AndroidStudioBeta / options / jdk.table.xml

Setelah mengedit file ini (dengan Studio dihentikan) dan memulai ulang pemetaan sumber berfungsi dengan baik untuk saya.

diff --git a/options/jdk.table.xml b/options/jdk.table.xml
index 0112b91..33828b8 100644
--- a/options/jdk.table.xml
+++ b/options/jdk.table.xml
@@ -76,7 +76,7 @@
         </javadocPath>
         <sourcePath>
           <root type="composite">
-            <root type="simple" url="file:///Applications/Android Studio.app/sdk/sources/android-19" />
+            <root type="simple" url="file:///Users/tehdawgz/dev/android-sdk/sources/android-19" />
           </root>
         </sourcePath>
       </roots>
gdawg.dll
sumber
AndroidStudio 2.1.2 di sini di Mac OS. Yang berikut ini berhasil bagi saya: <root type="simple" url="file://$USER_HOME$/Library/Android/sdk/sources/android-23" />
G. Steigert
1
Bekerja untuk saya. Ubuntu 14.04 / Android Studio 2.2. Saya menggunakan 'menemukan jdk.table.xml' yang dalam kasus saya berada di ~ / .AndroidStudio2.2 / config / options / jdk.table.xml. Menariknya, dalam proses ini tampaknya ada sesuatu yang menggantikan jalur absolut saya dengan "file: // $ USER_HOME $ ..." ?? Bagaimanapun, semuanya mulai berfungsi setelah saya memperbaiki file.
steven smith
16

Bagi saya pada 2016/08/29 menjalankan android studio 2.1.3:

Saya telah mengunduh dan mengkompilasi terhadap api 24 sebelum sumber dirilis. Saya ingin menunjukkan sumbernya sekarang setelah mereka dirilis. Memulai ulang Android Studio setelah mengunduh sumber di pengelola SDK tidak berfungsi.

Saya harus bertindak seperti saya akan Mengedit lokasi SDK di SDK Manager, ketika saya melakukannya, saya cukup mengklik 'berikutnya' melalui dialog dan mengindeks ulang hal-hal sdk secara otomatis.

tombol untuk mengedit lokasi SDK di mana untuk hanya mengklik berikutnya

joshkendrick
sumber
7

Solusi gdawg juga berfungsi untuk saya di Windows 10 dan Android Studio 2.0. Dengan sedikit modifikasi tempat file jdk.table.xml berada

C: \ Users \ {USER_NAME} \. AndroidStudio2.0 \ config \ options \ jdk.table.xml

urps
sumber
5

Tidak yakin mengapa jawaban yang diterima tampaknya hanya berfungsi dengan API level 19. Saya bisa melampirkan sumber SDK untuk API level 15 dengan secara eksplisit menyediakan jalur sumber untuk SDK. Inilah yang saya lakukan:

  1. Pastikan saya telah mengunduh sumber SDK yang diinginkan dan menyiapkan build.gradle saya dengan level API yang diinginkan.
  2. Di jendela Project di sebelah kiri, pilih menu drop-down External Libraries.
  3. Klik kanan item menu dan pilih Open Library Settings.
  4. Klik tab Sourcepath dan gunakan ikon + di kiri bawah untuk menautkan ke sumber SDK yang diinginkan (harus dalam sesuatu / sdk / sources)
sfridman.dll
sumber
6
> Klik kanan item menu dan pilih Open Library Settings. - di mana kamu menemukan itu?
Kiruwka
1
Tampaknya item menu ini tidak lagi tersedia. Ada cara untuk melakukan ini di InteliJ normal.
David
3

Di android studio 0.8.6 (Beta) (OSX 10.9.4), tampaknya Anda dapat melihat source code android secara langsung tanpa harus melampirkan Sources secara manual.

Prasyaratnya adalah Anda harus mengunduh "Sumber untuk Android SDK" di "SDK Manager" dan memulai ulang "Android Studio"

clevertension
sumber
1

Cukup ikuti langkah-langkah ini: Pengaturan -> Android SDK -> Luncurkan Standalone SDK Manager -> unduh sumber SDK yang Anda butuhkan (di setiap Versi Anroid Sources for Android SDK) -> mulai ulang Android Studio Anda. Jika di atas tidak membantu, pastikan Anda telah mendownload sumber SDK yang diperlukan, dan setel ulang Android SDK Locationuntuk menyegarkan. Saya harap ini membantu.

DysaniazzZ
sumber
0

Saya tidak tahu apa menu langkah 3 dari jawaban sfridman yang dimaksud. Cara lain yang saya lakukan untuk mendapatkan sumber yang saya minati adalah setelah Android Studio memunculkan .class yang ingin saya selami:

Breadcrumbs ke file .class

Saya kemudian dapat mengklik kanan pada runut tautan itu dan memilih "Lompat ke sumber":

masukkan deskripsi gambar di sini

Tampaknya menemukannya secara otomatis dari melakukan itu, mungkin karena saya telah menginstal sumber melalui pengelola Android SDK seperti yang dijelaskan di tempat lain.

Lee Adams
sumber
0

Pertama, periksa apakah Anda sudah memuat sumber.

kemudian setel ulang Lokasi Android SDK di settings.

Saya memecahkan masalah saya dengan metode di atas.

Double.fang
sumber
0

Satu-satunya hal yang berhasil bagi saya adalah:

  • Buka Android SDK Manager (Tools -> Android -> SDK Manager -> Launch Standalone SDK Manager)
  • uninstall semua Platform SDK dan Sumber untuk Android SDK (dari semua level API)
  • mulai ulang Android Studio

Setelah dimulai ulang, Android Studio akan memunculkan wizard karena tidak ada SDK yang diinstal: instal Platform SDK dan sumber untuk level API yang saat ini digunakan.

ulcica
sumber
0

Di Android Studio 2.3.3 pada Windows 7, saya mengalami masalah karena file sumber yang sudah diunduh dari API-Level 26 di folder SDK\sources\android-26tidak dikenali. Menggunakan "File | Invalidate Caches / Restart" memecahkan masalah saya.

pengguna1364368
sumber
0

Bagi saya mengunduh dan menyegarkan tidak membantu. Saya mencoba memilih sumber tetapi masih masalah yang sama. Jadi saya melakukan Invalidate Cache / Restart. Sekarang bekerja.

Saya mencoba mengedit file jdk.table.xml tetapi tidak ada entri untuk android-26, hanya sampai android-25, jadi saya memutuskan untuk tidak mengedit file itu.

pengguna4057066
sumber
0

Adapun untuk 09/08/2019 tersedia sumber-sumber tersebut

sources;android-15
    Description:        Sources for Android 15
    Version:            2

sources;android-16
    Description:        Sources for Android 16
    Version:            2

sources;android-17
    Description:        Sources for Android 17
    Version:            1

sources;android-18
    Description:        Sources for Android 18
    Version:            1

sources;android-19
    Description:        Sources for Android 19
    Version:            2

sources;android-20
    Description:        Sources for Android 20
    Version:            1

sources;android-21
    Description:        Sources for Android 21
    Version:            1

sources;android-22
    Description:        Sources for Android 22
    Version:            1

sources;android-23
    Description:        Sources for Android 23
    Version:            1

sources;android-24
    Description:        Sources for Android 24
    Version:            1

sources;android-25
    Description:        Sources for Android 25
    Version:            1

sources;android-26
    Description:        Sources for Android 26
    Version:            1

sources;android-27
    Description:        Sources for Android 27
    Version:            1

sources;android-28
    Description:        Sources for Android 28
    Version:            1

Anda dapat mendaftarnya dengan ./pathtoandroidsdk/tools/bin/sdkmanager --list --verbose --no_https

Misalnya, instal oleh ./pathtoandroidsdk/tools/bin/sdkmanager "sources;android-28"

Android Studio tidak perlu mengunduh

Petunjuk penyiapan di Android Studio

Dalam aplikasi, build.gradlesetel versi sdk yang benar yang akan menyertakan sumber yang diinginkan

android {
    compileSdkVersion 28
    ...

Untuk menerapkan perubahan - mulai ulang IDE

Vlad
sumber
0

Saya baru saja menemukan masalah serupa ketika saya perlu mengunduh platform android 28 melalui baris perintah, saya melihat jawaban untuk menjalankan perintah ./pathtoandroidsdk/tools/bin/sdkmanager "sources;android-28" .

Tapi nyatanya, dari developer.android.com , itu menunjukkan contoh sdkmanager "platform-tools" "platforms;android-28", jadi saya rasa seharusnya begitu ./pathToAndroidSdk/tools/bin/sdkmanager "platforms;android-28".

MadHatter
sumber