Android Studio: Android SDK kaynakları nasıl eklenir?


112

Android SDK kaynaklarını Android Studio'ya nasıl ekleyebilirim?

Android sınıflarından birini açtığımda, "Kaynakları Ekle" seçeneğiyle "Kaynaklar bulunamadı" penceresi görünmüyor.

Bunu yapmanın diğer yolu nedir?

Yanıtlar:


67

Sdk yöneticinizi araç çubuğu menülerinden açın ve build.gradle dosyanızda aşağıdaki gibi tanımlanan API seviyesi için "Android SDK için Kaynaklar" ı indirin

compileSdkVersion 19 // compile with API level 19

Başka hiçbir şeyin yapılmasına gerek yok.

Not: SDK kaynakları, yalnızca API düzeyleri 14 ve üzeri için kullanılabilir.

GÜNCELLEME (Sabit sürüm 3.2.1'e göre):

Google, kaynakları gönderme yaklaşımını değiştirdi, bu yüzden nelerin değiştiğini görelim.

Aşağıdaki konuma gidin

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

SDKArama ve stüdyoda gezinmede oldukça tembellik, doğru yere gitmenize yardımcı olacaktır.

görüntü açıklamasını buraya girin

Açıklamayı okuyabilirsiniz, çoğunlukla ne yapacağınızı söyler. Bu yüzden, "paket detaylarını göster" e tıkladıktan sonra, kaynakların kurulu olup olmadığını (aşağıdaki resimde gösterildiği gibi) göreceksiniz, eğer kurulu değilse kurun ve iyisinizdir.

görüntü açıklamasını buraya girin


1
@takumar, bunun nedeni SDK'nın kaynağının şu anda Android API 20 için mevcut olmamasıdır. Android "L" önizlemeden çıktığında, kaynak SDK yöneticisinde mevcut olacaktır.
Dick Lucas

37
Kaynakları indirdikten sonra, çalışması için Android Studio'yu yeniden başlatmam gerekiyordu
Sathesh

3
CompileSdkVersion'dan daha eski bir sürümde hata ayıklıyorsanız, kaynak kodu eşleşmeyecektir.
David

Çözüme Sathesh'in yorumunu eklerdim. Görünüşe göre çoğu benim de yeniden başlamalı.
Ferran Maylinch

"Android için Kaynaklar ..." girişini bulmak için "Paket Ayrıntılarını Göster" onay kutusunu işaretlemeniz gerekir
Flimm

247

Android Studio 3.2.1 raporlama: SDK'yı sıfırlayarak sorunu çözdü.

Tercihler -> Görünüm ve Davranış -> Sistem Ayarları -> Android SDK.

Android SDK konumunun sağındaki Düzenle'ye tıklayın . Sonra, Sonra, Sihirbazı tamamlamak için Bitir ve işte!


3
@ 0xF File / Settings for Windows (Linux?), Preferences for Mac. Görünüm ve Davranış eklendi, çok teşekkürler. Bunu tamamen kaçırdım.
Alexander Mayatsky

1
@AlexanderMayatsky Dosya / Ayarlar Linux'ta.
0xF

2
Linux'ta:File -> Settings -> Appearance&Behavior -> System Settings -> Android SDK
lenooh

2
Belgelerin görüntülenmediği aynı sorunla karşılaştım. Bu, 3.1.4 olan en son kararlı sürüm için sorunu çözdü.
ChallengeAccepted

Bu benim için çalışmıyor. CompileSdkVersion 28 için kaynakları indirdim ve build.gradle'ım da targetSdkVersion 28'e sahip ve uygulamamı hata ayıklayıcıda çalıştırdığımda art::ArtMethod::Invokeve gibi her türlü şeyi görebiliyorum StartBackgroundThread(bu, uygulamamdaki bir JNI yardımcı iş parçacığı içindir) ancak Yığının Android kısmındaki herhangi bir şeye tıklamak bana ilişkili kaynak dosyasını göstermiyor. Neyi kaçırıyorum?
kbro

32

OSX'te v8.11'de yukarıda belirtilen gui seçeneklerini bulamıyorum ancak grep-fu bana şunu söylüyor:

config şurada saklanır ~ / Library / Preferences / AndroidStudioBeta / options / jdk.table.xml'de saklanır

Bu dosyayı düzenledikten sonra (Studio durdu) ve kaynak eşlemeyi yeniden başlatmak benim için iyi çalışıyor.

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>

AndroidStudio 2.1.2, Mac OS'ta burada. Aşağıdakiler benim için çalıştı: <root type="simple" url="file://$USER_HOME$/Library/Android/sdk/sources/android-23" />
G. Steigert

1
Benim için çalıştı. Ubuntu 14.04 / Android Studio 2.2. Benim durumumda ~ / .AndroidStudio2.2 / config / options / jdk.table.xml adresindeki 'jdk.table.xml'yi bulun' kullandım. İlginç bir şekilde, bu sürecin bir noktasında mutlak yollarımın yerini "file: // $ USER_HOME $ ..." ile bir şey değiştirmiş gibi görünüyor? Her durumda, dosyayı düzelttikten sonra işler çalışmaya başladı.
steven smith

16

Benim için 2016/08/29 android studio 2.1.3 çalıştıran:

Kaynaklar yayınlanmadan önce api 24'ü indirmiştim ve derlemiştim. Şimdi serbest bırakıldıkları için kaynağı işaret etmek istiyorum. SDK yöneticisindeki kaynakları indirdikten sonra Android Studio'nun yeniden başlatılması çalışmıyordu.

SDK Yöneticisi'nde SDK konumunu düzenleyecekmişim gibi davranmam gerekiyordu, bunu yaptığımda, iletişim kutusundan 'ileri' düğmesini tıklayıp sdk öğelerini otomatik olarak yeniden indeksleyebildim.

SDK konumunu düzenleme düğmesi sadece sonra nereye tıklanacak


7

gdawg'ın çözümü benim için Windows 10 ve Android Studio 2.0'da da çalıştı. Jdk.table.xml dosyasının bulunduğu küçük değişiklikle

C: \ Users \ {USER_NAME} \ AndroidStudio2.0 \ config \ seçenekleri \ jdk.table.xml.


5

Kabul edilen cevabın neden yalnızca API seviyesi 19 ile çalıştığından emin değilim. SDK için kaynak yolunu açık bir şekilde sağlayarak API seviyesi 15 için SDK kaynakları ekleyebildim. İşte yaptığım şey:

  1. İstenen SDK kaynaklarını indirdiğimden ve build.gradle'ımı istenen API düzeyinde kurduğumdan emin olun.
  2. Soldaki Proje penceresinde, Harici Kitaplıklar açılır menüsünü seçin.
  3. Menü öğesine sağ tıklayın ve Kitaplık Ayarlarını Aç öğesini seçin.
  4. Sourcepath sekmesini tıklayın ve istenen SDK kaynaklarına bağlanmak için sol alttaki + simgesini kullanın (bir şey / sdk / kaynaklar içinde olmalıdır)

6
> Menü öğesine sağ tıklayın ve Kitaplık Ayarlarını Aç öğesini seçin. - bunu nerede buluyorsun?
kiruwka

1
Görünüşe göre bu menü öğesi artık mevcut değil. Bunu normal InteliJ'de yapmanın yolları vardır.
David

3

Android Studio 0.8.6'da (Beta) (OSX 10.9.4), Android kaynak kodunu Kaynakları manuel olarak eklemeden doğrudan görüntüleyebileceğiniz anlaşılıyor.

Ön koşul, "SDK Yöneticisi" ndeki "Android SDK Kaynakları" nı indirmeniz ve "Android Studio" yu yeniden başlatmanızdır.


1

Şu adımları izleyin: Ayarlar -> Android SDK -> Bağımsız SDK Yöneticisini Başlatın -> gerekli SDK kaynaklarınızı indirin (her Anroid Sürümünde Sources for Android SDK) -> Android Studio'nuzu yeniden başlatın. Yukarıdakiler yardımcı olmazsa, gerekli SDK kaynaklarını indirdiğinizden emin olun ve Android SDK Locationyenilemek için sıfırlayın . Umut ediyorum bu yardım eder.


0

Sfridman'ın cevabının 3. adımının hangi menü adımına atıfta bulunduğunu bilmiyordum. İlgilendiğim kaynağa ulaşmanın bir başka yolu da Android Studio'nun dalmak istediğim .class'ı açmasından sonraydı:

Kırıntıları .class dosyasına

Daha sonra bu içerik haritasını sağ tıklayıp "Kaynağa git" i seçebilirim:

görüntü açıklamasını buraya girin

Bunu yapmaktan otomatik olarak bulmuş gibiydi, muhtemelen kaynağı başka bir yerde açıklandığı gibi Android SDK yöneticisi aracılığıyla kurmuştum.


0

İlk olarak, zaten yüklediğiniz kaynağı kontrol edin.

ardından adresinden Android SDK Konumunu sıfırlayın settings.

Sorunumu yukarıdaki yöntemle çözdüm.


0

Benim için işe yarayan tek şey şuydu:

  • Android SDK Yöneticisi'ni açın (Araçlar -> Android -> SDK Yöneticisi -> Bağımsız SDK Yöneticisini Başlatın)
  • Android SDK için tüm SDK Platformunu ve Kaynaklarını kaldırın (tüm API düzeylerinden)
  • Android Studio'yu yeniden başlat

Android Studio yeniden başlatıldığında bir sihirbaz açacaktır çünkü SDK kurulu değildir: SDK Platformunu ve şu anda kullanılan API seviyesi için kaynakları yükleyin.


0

In Android Studio 2.3.3 Windows 7, zaten indirilen kaynak dosyaları klasöründe API Seviye 26 für sorunu vardı SDK\sources\android-26tanınmadı. Kullanılması "Dosya | Geçersiz Kılan Önbellekler / Yeniden" Benim için sorun çözüldü.


0

Benim için indirme ve yenileme yardımcı olmadı. Kaynağı seçmeye çalıştım ama yine de aynı sorun. Bu yüzden Önbelleği / Yeniden Başlatmayı Geçersiz Kıldım. Şimdi çalışıyor.

Jdk.table.xml dosyasını düzenlemeye çalıştım ama android-26 için bir girdi yoktu, sadece android-25'e kadardı, bu yüzden o dosyayı düzenlememeye karar verdim.


0

09/08/2019 için bu tür kaynaklar mevcuttur

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

Bunları listeleyebilirsin ./pathtoandroidsdk/tools/bin/sdkmanager --list --verbose --no_https

Örneğin, yükleme ./pathtoandroidsdk/tools/bin/sdkmanager "sources;android-28"

Android Studio'da indirmeye gerek yok

Android Studio'da kurulum talimatı

Uygulamada build.gradle, istenen kaynakları içerecek doğru sdk sürümünü ayarlayın

android {
    compileSdkVersion 28
    ...

Değişiklikleri uygulamak için - IDE'yi yeniden başlatın


0

Android 28 platformunu komut satırı üzerinden indirmem gerektiğinde benzer bir sorunla karşılaştım, komut çalıştırmanın cevabını gördüm ./pathtoandroidsdk/tools/bin/sdkmanager "sources;android-28" .

Ama aslında, developer.android.comsdkmanager "platform-tools" "platforms;android-28" adresinden şöyle bir örnek gösteriyor , yani sanırım öyle olmalı ./pathToAndroidSdk/tools/bin/sdkmanager "platforms;android-28".

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.