sdkmanager

sdkmanager, Android SDK paketlerini görüntülemenize, yüklemenize, güncellemenize ve kaldırmanıza olanak tanıyan bir komut satırı aracıdır. Android Studio kullanıyorsanız bu aracı kullanmanız gerekmez. Bunun yerine SDK paketlerinizi IDE'den yönetebilirsiniz.

sdkmanager aracı, Android SDK Komut Satırı Araçları paketinde sağlanır. SDK Yöneticisi'ni kullanarak komut satırı araçlarının bir sürümünü yüklemek için aşağıdaki adımları uygulayın:

  1. Android Studio indirmeler sayfasından "yalnızca komut satırı araçları" son paketini indirin ve paketin sıkıştırmasını açın.
  2. Çıkarılan cmdline-tools dizinini istediğiniz yeni dizine (ör. android_sdk) taşıyın. Bu yeni dizin, Android SDK dizininizdir.
  3. Çıkardığınız sıkıştırılmış cmdline-tools dizininde latest adlı bir alt dizin oluşturun.
  4. lib dizini, bin dizini, NOTICE.txt dosyası ve source.properties dosyası dahil olmak üzere, orijinal cmdline-tools dizini içeriklerini yeni oluşturulan latest dizinine taşıyın. Artık bu konumdaki komut satırı araçlarını kullanabilirsiniz.
  5. (İsteğe bağlı) Komut satırı araçlarının önceki bir sürümünü yüklemek için aşağıdaki komutu çalıştırın:

    android_sdk/cmdline-tools/latest/bin/sdkmanager --install "cmdline-tools;version"
    
    version kısmını yüklemek istediğiniz sürümle değiştirin, örneğin, 5.0.

Kullanım

Yüklü ve kullanılabilir paketleri listelemek, paketleri yüklemek ve paketleri güncellemek için sdkmanager uygulamasını kullanabilirsiniz. Daha fazla bilgi için aşağıdaki bölümlere bakın.

Yüklü ve kullanılabilir paketleri listeleme

Yüklü ve kullanılabilir paketleri listelemek için aşağıdaki söz dizimini kullanın:

sdkmanager --list [options] \
           [--channel=channel_id] // Channels: 0 (stable), 1 (beta), 2 (dev), or 3 (canary)

channel_id tarihine kadar olan bir kanaldan paketi dahil etmek için channel seçeneğini kullanın. Örneğin, canary kanalını tüm kanallardaki paketleri listeleyecek şekilde belirtin.

Paketleri yükle

Paketleri yüklemek için aşağıdaki söz dizimini kullanın:

sdkmanager packages [options]

packages bağımsız değişkeni, tırnak içine alınmış --list komutuyla gösterildiği gibi SDK stili bir yoldur. Örneğin, "build-tools;34.0.0" veya "platforms;android-33".

Boşlukla ayrılmış birden fazla paket yolu geçirebilirsiniz, ancak bunların her birinin kendi tırnak kümesine sarmalanması gerekir. Örneğin, API düzeyi 33 için en yeni platform araçlarını ve SDK araçlarını nasıl yükleyeceğiniz aşağıda açıklanmıştır:

sdkmanager "platform-tools" "platforms;android-33"

Alternatif olarak, tüm paketleri belirten bir metin dosyası iletebilirsiniz:

sdkmanager --package_file=package_file [options]

package_file bağımsız değişkeni, her satırın yüklenecek bir paketin SDK tarzı yolu (tırnak işaretleri olmadan) olduğu bir metin dosyasının konumudur.

Yüklemeyi kaldırmak için --uninstall işaretini ekleyin:

sdkmanager --uninstall packages [options]
sdkmanager --uninstall --package_file=package_file [options]

CMake veya NDK'yı yüklemek için aşağıdaki söz dizimini kullanın:

sdkmanager --install
           ["ndk;major.minor.build[suffix]" | "cmake;major.minor.micro.build"]
           [--channel=channel_id] // NDK channels: 0 (stable), 1 (beta), or 3 (canary)

Örneğin, şu anda hangi kanalda olduğuna bakılmaksızın, belirtilen NDK sürümünü yüklemek için aşağıdaki komutu kullanın:

sdkmanager --install "ndk;21.3.6528147" --channel=3 // Install the NDK from the canary channel (or below)
sdkmanager --install "cmake;10.24988404" // Install a specific version of CMake

Tüm yüklü paketleri güncelle

Tüm yüklü paketleri güncellemek için aşağıdaki söz dizimini kullanın:

sdkmanager --update [options]

Lisansları kabul et

Yüklediğiniz her paket için gerekli lisansı kabul etmeniz gerekir. Bu adım, yükleme akışı sırasında, paketleri Android Studio'dan yüklediğinizde gerçekleşir.

Android Studio yüklü değilse veya CI sunucusu ya da GUI yüklü olmayan başka bir gözetimsiz Linux cihaz içinse komut satırından aşağıdakileri yapın:

sdkmanager --licenses

Bu işlemle, henüz kabul edilmemiş tüm lisansları kabul etmeniz istenir.

Seçenekler

Aşağıdaki tabloda, önceki bölümde listelenen komutlar için kullanılabilen seçenekler listelenmiştir:

Option Açıklama
--sdk_root=path Bu aracı içeren SDK yerine belirtilen SDK yolunu kullanın.
--channel=channel_id Paketleri, channel_id değerine kadar olan kanallara ekleyin. Kullanılabilir kanallar şunlardır:

0 (Kararlı), 1 (Beta), 2 (Yeni Geliştirilenler) ve 3 (Canary).

--include_obsolete Eski paketleri paket listesine veya paket güncellemelerine dahil edin. Yalnızca --list ve --update ile kullanım içindir.
--no_https Tüm bağlantıları HTTPS yerine HTTP kullanmaya zorla.
--newer --list ile yalnızca yeni veya güncellenebilir paketleri gösterin.
--verbose Ayrıntılı çıkış modu. Hatalar, uyarılar ve bilgi amaçlı mesajlar yazdırılır.
--proxy={http | socks} Belirtilen türden bir proxy aracılığıyla bağlanın: HTTP veya FTP gibi üst düzey protokoller için http ya da SOCKS (V4 veya V5) proxy'si için socks.
--proxy_host={IP_address | DNS_address} Kullanılacak proxy'nin IP veya DNS adresi.
--proxy_port=port_number Bağlanılacak proxy bağlantı noktası numarası.