Android Studio Önizlemesi'ndeki yeni özellikler

Bu sayfada, Android Studio önizleme sürümlerinde sunulan yeni özellikler listelenmektedir. Önizleme derlemeleri, Android Studio'daki en son özelliklere ve iyileştirmelere erken erişim sağlar. Bu önizleme sürümlerini buradan indirebilirsiniz. Android Studio'nun önizleme sürümünü kullanırken herhangi bir sorunla karşılaşırsanız lütfen bize bildirin. Hata raporlarınız, Android Studio'yu iyileştirmemize yardımcı olur.

Her bir önizleme sürümündeki önemli düzeltmelerin listesi de dahil olmak üzere Android Studio önizleme sürümleriyle ilgili en son haberler için Android Studio blogundaki Yayın Güncellemeleri konusuna bakın.

Android Studio'nun mevcut sürümleri

Aşağıdaki tabloda Android Studio'nun mevcut sürümleri ve bunlarla ilgili kanallar listelenmiştir.

Sürüm Kanal
Android Studio Kirpi | 1.1.2023 Kararlı
Android Gradle eklentisi 8.2.0 Kararlı
Android Studio Iguana | 1.2.2023 Canary

Android Gradle eklentisi önizlemeleriyle uyumluluk

Android Studio'nun her önizleme sürümü, Android Gradle eklentisinin (AGP) karşılık gelen bir sürümüyle birlikte yayınlanır. Studio'nun önizleme sürümleri AGP'nin uyumlu tüm kararlı sürümleriyle çalışır. Ancak, AGP'nin bir önizleme sürümünü kullanıyorsanız Studio'nun ilgili önizleme sürümünü kullanmanız gerekir (örneğin, AGP 7.2.0-alpha07 içeren Android Studio Chipmunk Canary 7). Farklı sürümleri kullanma denemeleri (örneğin, AGP 7.2.0-alpha07 ile Android Studio Chipmunk Beta 1) Senkronizasyon hatasına neden olur ve bunun sonucunda da AGP'nin ilgili sürümüne güncelleme istemi görüntülenir.

Android Gradle eklentisi API kullanımdan kaldırma ve kaldırma işlemlerinin ayrıntılı bir günlüğü için Android Gradle eklentisi API güncellemelerini inceleyin.

Android Studio Iguana | 1.2.2023

Android Studio Iguana'daki yeni özellikler aşağıda belirtilmiştir.

Studio Bot'u ile tanışın

Studio Bot, Android'de uygulama geliştirmede kullanabileceğiniz kodlama yardımcınızdır. Bu, Android Studio'da bulunan ve Android geliştirme sorgularını yanıtlayarak daha üretken olmanıza yardımcı olan yapay zeka destekli bir sohbet deneyimidir. Daha fazla bilgi için Meet Studio Bot'u bölümüne bakın.

Android Studio'yu Güvenli Modda Başlat

Android Studio Hedgehog, Android Studio'yu Güvenli Mod'da başlatma özelliğini kullanıma sundu. Bu mod, belirli özelliklerin çalışmadığı veya IDE'nin tamamının başlatılamaması gibi durumlarda faydalı olabilir. Bu durum, bazen özel yapılandırmalar, ortam değişkenleri veya Android Studio ile uyumsuz olan eklentilerden kaynaklanabilir.

Güvenli Mod'un kullanılması, IDE'yi geçici olarak bir dizi varsayılan yapılandırmanın başlatılmasına izin verebilecek şekilde döndürür. Böylece, sorunu tespit edip işlevselliği geri yüklemek için buradan sorun giderebilirsiniz. Güvenli Mod, aşağıdakiler gibi işlemler gerçekleştirerek Android Studio'yu sınırlı işlevlerle açmaya çalışır:

  • Üçüncü taraf eklentilerini devre dışı bırakır
  • Paket halinde sunulan Kotlin eklentisini, orijinal olarak Studio ile birlikte verilen sürüme geri yükler
  • Yapılandırmaları geçici olarak sıfırlar (örneğin, studio.vmoptions dosyasında)
  • Başlatmayı engelleyebilen JRE_HOME ve TMP gibi ortam değişkenlerini doğrular
  • Gerekirse JRE kodunu uyumlu bir sürüme geri döndürür

Android Studio'yu Güvenli Mod'da başlatmak için aşağıdaki adımları uygulayın:

  1. Güvenli Mod komut dosyasını bulun.
    • Windows'da AndroidStudio/bin bölümüne gidin ve studio_safe.bat komut dosyasını bulun.
    • macOS'te Android Studio/Contents/bin adresine gidip studio_safe.sh komut dosyasını bulun.
    • Linux'ta android-studio/bin adresine gidin ve studio_safe.sh komut dosyasını bulun.
  2. Komut dosyasını çalıştırın: Komut satırını açın ve studio_safe.bat yazın (macOS veya Linux için studio_safe.sh) ve Enter tuşuna basın.

Uygulama Kalitesi Analizleri'nde sürüm kontrol sistemi entegrasyonu

Uygulama Kalitesi Analizleri artık kilitlenmenin meydana geldiği anda bir Crashlytics yığın izlemeden ilgili koda gitmenize olanak tanıyor. AGP, Android Studio'nun kodunuza gitmesine ve sorunun oluştuğu sürümde nasıl olduğunu göstermesine yardımcı olmak için kilitlenme raporlarına git kaydetme karma verilerini ekler. Uygulama Kalitesi Analizleri'nde bir kilitlenme raporu görüntülediğinizde, geçerli git ödeme hesabınızdaki kod satırına gitmeyi seçebilir veya geçerli ödeme işlemi ile kilitlenmeyi oluşturan kod tabanınızın sürümü arasındaki farkı görüntüleyebilirsiniz.

Sürüm kontrol sisteminizi Uygulama Kalitesi Analizleri ile entegre etmek için aşağıdaki minimum gereksinimleri karşılamanız gerekir:

Sürüm kontrolü entegrasyonunu kullanmak için gradle.properties dosyasında android.enableVcsInfo işaretini etkinleştirin:

android.enableVcsInfo=true

Artık uygulamanızı derleyip Google Play'de yayınladığınızda kilitlenme raporları, IDE'nin uygulamanızın önceki sürümlerine yığın izlemeden bağlantı vermesi için gerekli verileri içerir.

Kullanıcı Arayüzü Denetimi Oluştur

Geliştiricilerin Jetpack Compose'da daha uyarlanabilir ve erişilebilir kullanıcı arayüzü oluşturmasına yardımcı olmak için Android Studio Iguana Canary 5, Oluşturma Önizlemesi'nde yeni bir Kullanıcı Arayüzü Kontrolü modunu kullanıma sundu. Bu özellik, görünümler için Görsel hata analizi ve Erişilebilirlik kontrolü entegrasyonlarına benzer şekilde çalışır. Oluşturma kullanıcı arayüzünüzü otomatik olarak denetlemek ve farklı ekran boyutlarında (ör. büyük ekranlarda uzatılmış metin ya da düşük renk kontrastı) uyarlanabilir ve erişilebilirlik sorunlarını kontrol etmek üzere Android Studio için Oluşturma kullanıcı arayüzü kontrol modunu etkinleştirin. Mod, farklı önizleme yapılandırmalarında bulunan sorunları vurgular ve bunları sorunlar panelinde listeler.

Önizleme Oluşturma sayfasındaki kullanıcı arayüzü kontrol simgesini tıklayarak bu özelliği hemen deneyin ve geri bildiriminizi gönderin:

Kullanıcı Arayüzü Kontrol Modu ile ilgili bilinen sorunlar:

  • Sorun panelinden seçilen sorun, odağın kaybolmasına neden olabilir
  • 'Engelleme kuralı' çalışmıyor

Oluşturma Önizlemesi için Progresif Oluşturma

Android Studio Iguana Canary 3, Oluşturma Önizlemesi'nde Progresif Oluşturma özelliğini kullanıma sunuyor. Önizlemeleri daha performanslı hale getirmek için kesintisiz olarak sürdürdüğümüz çalışmalar kapsamında, artık görünüm dışında olan her önizlemede, kullanılan bellekten tasarruf etmek için oluşturma kalitesini kasıtlı olarak düşürüyoruz.

Bu özellik, dosyayı hemen deneyin ve geri bildiriminizi göndererek aynı anda daha fazla önizlemeyi işleyerek Önizlemelerin kullanılabilirliğini daha da artırmak amacıyla geliştirilmiştir.

Espresso Device API'yi kullanarak yapılandırma değişikliklerine göre test etme

Cihazınız döndürme ve ekran açma gibi yaygın yapılandırma değişikliklerinden geçtiğinde uygulamanızı test etmek için Espresso Device API'yi kullanın. Espresso Device API, bu yapılandırma değişikliklerini sanal bir cihazda simüle etmenizi sağlar ve testlerinizi eşzamanlı olarak yürütür. Böylece, tek seferde yalnızca bir kullanıcı arayüzü işlemi veya onayı gerçekleşir ve test sonuçlarınız daha güvenilir olur. Espresso ile kullanıcı arayüzü testleri yazmaya yeni başladıysanız belgeleri inceleyin.

Espresso Device API'yi kullanmak için şunlara ihtiyacınız vardır:

  • Android Studio Iguana'nın en son Canary sürümü
  • Android Gradle Eklentisi 8.3'ün en son Alfa sürümü
  • Android Emulator 33.1.10 veya sonraki sürümler
  • API düzeyi 24 veya sonraki sürümleri çalıştıran Android sanal cihazı

Projenizi Espresso Device API'si için ayarlama

Projenizi Espresso Device API'yi destekleyecek şekilde ayarlamak için aşağıdakileri yapın:

  • Testin komutları test cihazına iletebilmesi için INTERNET ve ACCESS_NETWORK_STATE izinlerini androidTest kaynak grubundaki manifest dosyasına ekleyin:

      <uses-permission android:name="android.permission.INTERNET" />
      <uses-permission android:name="android.permissions.ACCESS_NETWORK_STATE" />
      
  • gradle.properties dosyasında enableEmulatorControl deneme işaretini etkinleştirin:

      android.experimental.androidTest.enableEmulatorControl=true
      
  • Modül düzeyindeki derleme komut dosyasında emulatorAccess seçeneğini etkinleştirin:

    Kotlin

      testOptions {
        emulatorAccess {
          isEnabled = true
        }
      }
      

    Modern

      testOptions {
        emulatorAccess {
          enabled true
        }
      }
      
  • Modül düzeyindeki derleme komut dosyasında, Espresso Cihazı kitaplığını projenize aktarın:

    Kotlin

      dependencies {
        androidTestImplementation("androidx.test.espresso:espresso-device:1.0.0-alpha05")
      }
      

    Modern

      dependencies {
        androidTestImplementation 'androidx.test.espresso:espresso-device:1.0.0-alpha05'
      }
      

Sık karşılaşılan yapılandırma değişiklikleriyle test etme

Espresso Device API'nin birden fazla ekran yönü ve katlanabilir durumu sayesinde cihaz yapılandırmasındaki değişiklikleri simüle edebilirsiniz.

Ekran döndürmeye karşı test et

Cihaz ekranı döndüğünde uygulamanıza ne olduğunu nasıl test edeceğinize dair bir örneği aşağıda bulabilirsiniz:

  1. Öncelikle tutarlı bir başlangıç durumu için cihazı dikey moda ayarlayın:

      import androidx.test.espresso.device.action.ScreenOrientation
      import androidx.test.espresso.device.rules.ScreenOrientationRule
      ...
      @get:Rule
      val screenOrientationRule: ScreenOrientationRule = ScreenOrientationRule(ScreenOrientation.PORTRAIT)
      
  2. Test yürütme sırasında cihazı yatay yöne ayarlayan bir test oluşturun:

      @Test
      fun myRotationTest() {
        ...
        // Sets the device to landscape orientation during test execution.
        onDevice().setScreenOrientation(ScreenOrientation.LANDSCAPE)
        ...
      }
      
  3. Ekran döndükten sonra kullanıcı arayüzünün beklendiği gibi yeni düzene uyum sağladığından emin olun.

      @Test
      fun myRotationTest() {
        ...
        // Sets the device to landscape orientation during test execution.
        onDevice().setScreenOrientation(ScreenOrientation.LANDSCAPE)
        composeTestRule.onNodeWithTag("NavRail").assertIsDisplayed()
        composeTestRule.onNodeWithTag("BottomBar").assertDoesNotExist()
      }
      
Ekran açılmaya karşı test edin

Uygulamanız katlanabilir bir cihazdaysa ve ekranı açıkken ne olduğunu nasıl test edeceğinize dair bir örneği aşağıda bulabilirsiniz:

  1. Önce onDevice().setClosedMode() yöntemini çağırarak cihazı katlanmış durumdayken test edin. Uygulama düzeninizin küçük ekran genişliğine uyum sağladığından emin olun.

      @Test
      fun myUnfoldedTest() {
        onDevice().setClosedMode()
        composeTestRule.onNodeWithTag("BottomBar").assetIsDisplayed()
        composeTestRule.onNodeWithTag("NavRail").assetDoesNotExist()
        ...
      }
      
  2. Tamamen açık duruma geçmek için onDevice().setFlatMode() numaralı telefonu arayın. Uygulama düzeninin, genişletilmiş boyut sınıfına uyum sağladığından emin olun.

      @Test
      fun myUnfoldedTest() {
        onDevice().setClosedMode()
        ...
        onDevice().setFlatMode()
        composeTestRule.onNodeWithTag("NavRail").assertIsDisplayed()
        composeTestRule.onNodeWithTag("BottomBar").assetDoesNotExist()
      }
      

Testlerinizin ihtiyaç duyduğu cihazları belirtin

Katlanabilir olmayan bir cihazda katlama işlemleri gerçekleştiren bir test çalıştırıyorsanız test büyük olasılıkla başarısız olur. Yalnızca çalışan cihazla alakalı testleri yürütmek için @RequiresDeviceMode ek açıklamasını kullanın. Test çalıştırıcı, test edilmekte olan yapılandırmayı desteklemeyen cihazlarda çalıştırılan testleri otomatik olarak atlar. Cihaz gereksinimi kuralını her teste veya test sınıfının tamamına ekleyebilirsiniz.

Örneğin, bir testin yalnızca düz yapılandırmaya genişletmeyi destekleyen cihazlarda çalıştırılması gerektiğini belirtmek için testinize aşağıdaki @RequiresDeviceMode kodunu ekleyin:

@Test
@RequiresDeviceMode(mode = FLAT)
fun myUnfoldedTest() {
  ...
}

Temel Profiller modül sihirbazı

Android Studio Iguana'dan başlayarak yeni modül sihirbazındaki (Dosya > Yeni > Yeni Modül) Temel Profil Oluşturma Aracı şablonunu kullanarak uygulamanız için Temel Profiller oluşturabilirsiniz.

Bu şablon, projenizi Temel Profilleri destekleyebilecek şekilde ayarlar. Bu model, projenizi tek bir Gradle göreviyle gerekli şekilde ayarlama sürecini otomatikleştiren yeni Baseline Profile Gradle eklentisini kullanır.

Şablon, Çalıştır/Hata Ayıklama Yapılandırmasını Seçin açılır listesinden tek tıklamayla bir Temel Profil oluşturmanıza olanak tanıyan bir çalıştırma yapılandırması da oluşturur.

Gradle Sürüm Katalogları desteği

Android Studio Giraffe, bağımlılıkları tek bir merkezi konumdan yönetmenize ve bağımlılıkları modüller veya projeler arasında paylaşmanıza olanak tanıyan TOML tabanlı Gradle Sürüm Katalogları özelliğini desteklemeye başladı. Android Studio, artık düzenleyici önerileri ve Proje Yapısı iletişim kutusuyla entegrasyon sayesinde sürüm kataloglarının yapılandırılmasını kolaylaştırıyor. Gradle Sürüm Kataloglarına nasıl güncelleme yapılacağını öğrenmek için Derlemenizi sürüm kataloglarına taşıma bölümüne bakın.

Kod tamamlama ve gezinme

Bir sürüm kataloğunu TOML dosya biçiminde düzenlerken veya bir sürüm kataloğundan derleme dosyasına bağımlılık eklerken Android Studio, kod tamamlama özelliği sunar. Kod tamamlamayı kullanmak için Ctrl+Boşluk (macOS'te Command+Boşluk) tuşlarına basın. Ayrıca, Ctrl+b (macOS'te Command+b) tuşlarına basarak uygulamanızın build.gradle dosyasındaki bir bağımlılık referansından bu bağımlılık referansından sürüm kataloğunda açıklandığı yere hızlıca gidin.

Bağımlılık eklerken kod tamamlama

Proje Yapısı iletişim kutusuyla entegrasyon

Projeniz TOML dosya biçiminde tanımlanmış bir sürüm kataloğu kullanıyorsa burada tanımladığınız değişkenleri Android Studio'daki Proje Yapısı iletişim kutusu Değişkenler görünümünden (Dosya > Proje Yapısı > Değişkenler) düzenleyebilirsiniz. Her sürüm kataloğu için, ilgili katalogdaki değişkenleri listeleyen bir açılır menü bulunur. Bir değişkeni düzenlemek için değerini tıklayıp üzerine yazın. Bu değişiklikleri kaydettiğinizde TOML dosyası uygun şekilde güncellenir.

Proje Yapısı iletişim kutusundaki bir sürüm kataloğundaki değişkenler

Bağımlılıkları ayrıca Proje Yapısı iletişim kutusu Bağımlılıklar görünümünde (Dosya > Proje Yapısı > Bağımlılıklar) güncelleyebilirsiniz. Sürümleri, Proje Yapısı iletişim kutusunu kullanarak güncellemek için düzenlemek istediğiniz modüle ve bağımlılığa gidin, ardından İstenen Sürüm alanını güncelleyin. Bu değişiklikleri kaydettiğinizde TOML dosyası uygun şekilde güncellenir. Bağımlılık sürümü bir değişken kullanılarak tanımlandıysa sürümün doğrudan bu şekilde güncellenmesi, değişkenin sabit kodlu bir değerle değiştirilmesini sağlar. Ayrıca, Proje Yapısı iletişim kutusunu kullansanız da kullanmasanız da bir bağımlılığı derleme dosyasından kaldırmanın, bağımlılığı sürüm kataloğundan kaldırmayacağını unutmayın.

Proje Yapısı iletişim kutusundaki bir sürüm kataloğundaki bağımlılıklar

Bilinen sorunlar ve sınırlamalar

Aşağıda, Android Studio'daki Gradle Version Catalogs desteğiyle ilgili bilinen sorunlar veya sınırlamalar bulunmaktadır.

Kotlin komut dosyası dosyalarında eklenti takma adı bildirimleri vurgulanırken hata oluştu

alias(libs.plugins.example) biçiminde bir eklenti bildirimi eklediğinizde, düzenleyici libs bölümünün altına kırmızı bir alt çizgi ekler. Bu, Gradle'ın 8.0 ve önceki sürümlerinde bilinen bir sorundur ve Gradle'ın gelecekteki bir sürümünde çözülecektir.

Android Studio yalnızca TOML biçimindeki sürüm katalogları için desteklenir

Android Studio kod tamamlama, gezinme ve Proje Yapısı iletişim kutusu desteği şu anda yalnızca TOML dosya biçiminde tanımlanan sürüm katalogları için kullanılabilmektedir. Yine de sürüm kataloğunu doğrudan settings.gradle dosyasına ekleyebilir ve projenizde bu kataloğun bağımlılıklarını kullanabilirsiniz.

Kotlin komut dosyası kullanılarak yazılan derleme dosyalarında Control + tıklama (macOS'te Command + tıklama) tuşlarını kullanarak bir sürüm kataloğunda bağımlılık tanımına gitme henüz desteklenmemektedir.

Firebase Assistant, bağımlılıkları doğrudan derleme komut dosyalarına ekler

Firebase Asistan, bağımlılıkları sürüm katalogları yerine doğrudan derleme komut dosyalarınıza ekler.

"Kullanımları bulma" işlevi desteklenmiyor

Derleme dosyası ister KTS'te ister Groovy'de olsun, diğer derleme dosyalarında sürüm kataloğu değişkeninin kullanımlarını bulma özelliği henüz desteklenmemektedir. Yani bir sürüm kataloğunda değişken tanımında Control+tıklama (macOS'te Command+tıklama) komutunun kullanılması, değişkenin kullanıldığı derleme dosyalarına yönlendirmez.

Proje Yapısı iletişim kutusunda bileşik derlemelerin katalogları gösterilmiyor

Android Studio'daki Proje Yapısı iletişim kutusu, kök gradle klasöründeyse birden fazla katalog dosyası gösterir ancak birleşik derleme kataloglarını göstermez. Örneğin, biri uygulamanız ve diğeri birleşik derleme için olmak üzere iki katalog dosyanız varsa Proje Yapısı iletişim kutusunda yalnızca uygulama katalog dosyası gösterilir. Bileşik bir derleme kullanabilirsiniz, ancak doğrudan TOML dosyasını düzenlemeniz gerekir.

Android Studio DerlemeSdk sürüm desteği

Projeniz, Android Studio'nun geçerli sürümü tarafından desteklenmeyen bir compileSdk kullanıyorsa Android Studio bir uyarı gösterir. Varsa, projenizde kullanılan compileSdk destekleyen bir Android Studio sürümüne geçmeniz de önerilir. Android Studio'yu yeni sürüme geçirmek için AGP'yi yeni sürüme geçirmeniz gerekebileceğini unutmayın. Projeniz tarafından kullanılan compileSdk değeri, geçerli AGP sürümü tarafından desteklenmiyorsa AGP, Derleme araç penceresinde bir uyarı da gösterir.