Android Studio Dolphin'deki yeni özellikler aşağıda belirtilmiştir.
Compose'da yeni
Aşağıda, Android Studio'daki Jetpack Compose'a yönelik yeni özellikler ve iyileştirmeler yer almaktadır.
Animasyon Koordinasyonu Oluşturma
Animasyonlarınız oluşturulabilir bir önizlemede açıklanıyorsa artık tümünü aynı anda incelemek ve koordine etmek için Animasyon Önizlemesi'ni kullanabilirsiniz. Ayrıca, belirli bir animasyonu dondurabilirsiniz.
Çoklu Önizleme Ek Açıklamaları Oluşturma
Artık birden çok Önizleme tanımı içeren bir ek açıklama sınıfı tanımlayabilir ve bu yeni ek açıklamayı, bu önizlemeleri aynı anda oluşturmak için kullanabilirsiniz. Bu yeni ek açıklamayı, oluşturulan her bir öğe için bu tanımları tekrarlamadan, aynı anda birden çok cihazı, yazı tipini ve temayı önizlemek için kullanın.
Düzen İnceleyici'de Yeniden Oluşturma Sayıları Oluşturma
Oluşturma düzenlerinizde hata ayıklarken, kompozitlerin ne zaman yeniden oluşturup oluşturmadığını bilmek, kullanıcı arayüzünüzün düzgün bir şekilde uygulanıp uygulanmadığını anlamak açısından önemlidir. Örneğin, çok fazla sayıda yeniden oluşturma işlemi gerçekleştiriliyorsa uygulamanız gerekenden daha fazla çalışıyor olabilir. Diğer yandan, olmasını beklediğiniz zamanda yeniden oluşturulmayan bileşenler beklenmedik davranışlara yol açabilir.
Layout Inspector artık, düzen hiyerarşinizdeki ayrı kompozit öğelerin ne zaman yeniden oluşturulduğunu veya atlandığını görmenize olanak tanır. Bu bilgiler, siz uygulamanızla etkileşimde bulunduğunuz sırada canlı olarak gösterilir. Başlamak için uygulamanızın Oluştur 1.2.0-alpha03
veya üstünü kullandığından emin olun. Ardından uygulamanızı normalde yaptığınız gibi dağıtın.
Düzen Denetleyici penceresini açın ve uygulama işleminize bağlanın. Bileşen Ağacı'nda, düzen hiyerarşisinin yanında iki yeni sütun görmeniz gerekir. İlk sütunda her bir düğüm için bileşim sayısı gösterilir. İkinci sütunlar, her bir düğüm için atlama sayısını gösterir. Bileşen Ağacı veya Düzen Görünümü'nden bir beste seçtiğinizde de Özellikler bölmesinde de benzer bilgiler görebilirsiniz.
Sayıyı sıfırlamak isterseniz Bileşen Ağacı panelinin üst kısmındaki Sıfırla'yı tıklayın. Sayıyı sıfırlamak, uygulamanızla belirli bir etkileşim sırasında yapılan yeniden oluşturmaları veya atlamaları anlamanıza yardımcı olabilir.
Wear OS emülatör eşleme asistanı güncellendi
Android Studio Dolphin Canary 3'ten başlayarak Wear OS emülatör eşleme asistanı, Wear emülatörlerini yönetmeyi ve bağlamayı kolaylaştıran iyileştirilmiş özelliklere sahiptir. Artık şunları yapabilirsiniz:
- Cihaz Yöneticisi'nde Wear cihazlara bakın.
- Birden fazla Wear cihazını tek bir sanal veya fiziksel telefonla eşleyin.
- Başlatıldıklarında, daha önce eşlenen cihazları otomatik olarak yeniden bağlayın. Android Studio artık son kurulumu hatırlayıp yeniden eşliyor.
Bu yeni özellikleri kullanabilmek için telefon emülatörlerinizin API düzeyi 30 veya üstü olduğundan ve Google Play Store'un yüklü olduğundan emin olun. Ayrıca, Wear emülatörlerinizin API düzeyi 28 veya üstü olduğundan emin olun. Öykünülen cihazlarınızda en yeni sistem görüntülerine geçmek için Araçlar > SDK Yöneticisi'ne gidin.
Daha fazla bilgi edinmek için Wear OS emülatör eşleme asistanını kullanma başlıklı makaleye göz atın.
Wear OS emülatör araç çubuğu güncellendi
Android Studio Dolphin Canary 2'den başlayarak, API düzeyi 28 veya sonraki sürümleri olan Wear emülatörleri için emülatör araç çubuğunda artık fiziksel düğmeleri ve cihazdaki genel işlemleri simüle eden düğmeler bulunmaktadır. Yeni düğmeler şunlardır: Düğme 1 ve Düğme 2 (Düğme 2 yalnızca API düzeyi 30 veya sonraki sürümlerde kullanılabilir), Avuç İçi düğmesi ve Eğme düğmesi. Wear emülatörünüzdeki yeni düğmeleri kullanarak yapabileceğiniz işlemlerden bazıları şunlardır:
- Cihazınızı ambiyans moduna ayarlamak için Avuç içi düğmesini tıklayın.
- Cihazınızı ambiyans modundan önceki son ekrana döndürmek için Yatır düğmesini tıklayın.
Daha fazla bilgi için Emülatörde genel işlemleri gerçekleştirme bölümüne bakın.
Yeni Wear OS çalıştırma yapılandırmaları
Wear OS'e özel kadranlar, kartlar ve özellikler gibi yüzeyleri hızlı bir şekilde çalıştırıp hata ayıklamak için yeni çalıştırma yapılandırmaları eklendi. Bu yeni yapılandırmaları, uygulamanızı çalıştırırken Çalıştır/Hata Ayıklama Yapılandırmaları iletişim kutusundan oluşturabilirsiniz.
Daha fazla bilgi için Wear OS çalıştırma/hata ayıklama yapılandırmaları başlıklı makaleye bakın.
Yeni Logcat
Logcat, günlükleri ayrıştırmayı, sorgulamayı ve izlemeyi kolaylaştıracak şekilde güncellendi.
Yeni biçimlendirici
Logcat, etiketler ve mesajlar gibi faydalı bilgilerin taranmasını ve uyarı ve hata gibi farklı günlük türlerini tanımlamayı kolaylaştırmak için günlükleri biçimlendiriyor.
Birden çok Logcat penceresi oluşturma
Artık Logcat'te birden fazla sekme oluşturabilir, böylece farklı cihazlar veya sorgular arasında kolayca geçiş yapabilirsiniz. Bir sekmeyi sağ tıklayarak yeniden adlandırabilirsiniz. Sekmeleri tıklayıp sürükleyerek yeniden düzenleyebilirsiniz.
Ayrıca, iki günlük grubu arasında kolayca karşılaştırma yapabilmeniz için artık günlük görünümünde sağ tıklayıp Sağa Böl veya Böl'ü seçerek görünümü bir sekme içinde bölebilirsiniz. Bölmeyi kapatmak için sağ tıklayıp Kapat'ı seçin. Her bölme, kendi cihaz bağlantısını, görüntüleme seçeneklerini ve sorguyu ayarlamanıza olanak tanır.
Görünüm hazır ayarları arasında geçiş yapın
Logcat, artık simgesini tıklayarak farklı görünüm modları (Standart, Kompakt ve Özel) arasında hızla geçiş yapmanıza olanak tanıyor. Her görüntüleme modu, zaman damgaları, etiketler ve işlem kimlikleri (PID) gibi daha fazla veya daha az bilgi göstermek için farklı bir varsayılan ayar sağlar. Ayrıca Görünümü Değiştir'i seçerek bu varsayılan görüntüleme modlarının her birini ve özel bir görünüm modunu özelleştirebilirsiniz.
Yeni anahtar/değer çifti arama
Logcat'in önceki sürümünde, dize araması (normal ifadeleri destekleyen) veya Logcat kullanıcı arayüzünü kullanarak çeşitli alanları doldurarak yeni bir filtre oluşturma seçeneğiniz vardı. İlk seçenek aramayı daha karmaşık hale getirirken, ikinci seçenek sorguların paylaşılmasını ve ayarlanmasını daha zor hale getirdi. Doğrudan ana sorgu alanından anahtar/değer araması yaparak bu deneyimi basitleştirdik.
Bu yeni sorgu sistemi, normal ifadelere bağlı kalmadan, sorgulamak istediğiniz şeylerin doğruluğunu sağlar, geçmişte yapılan sorguları hatırlama ve bu sorguları başkalarıyla paylaşma olanağı sunar. Ayrıca RegEx'i kullanmaya devam edebilir ve günlükleri anahtar/değer çiftlerine göre hariç tutabilirsiniz. Aşağıda, yeni sorgu sisteminin nasıl kullanılacağına dair bazı örnekler verilmiştir. Ancak önerileri görmek için sorgu alanına yazmaya da başlayabilirsiniz:
- Yerel uygulama projesinin PID'leri:
package:mine
- Spesifik değerler:
package:<package-ID>
tag:<tag>
level:[VERBOSE | INFO | ASSERT |DEBUG | WARN | ERROR ]
- Anahtarın önüne
-
ekleyerek belirli bir değeri hariç tutma:-tag:<exclude-tag>
- Anahtarın arkasına
~
yerleştirerek belirli bir anahtarla normal ifadeleri kullanın:tag~:<regular-expression-tag>
- Hariç tutma etiketiyle birleştir:
-tag~:<exclude-regular-expression-tag>
Ayrıca, sorgu alanında simgesini tıklayıp açılır menüden seçim yaparak sorgu geçmişini de görebilirsiniz. Bir sorguyu tüm stüdyo projelerinizde listenin başında olacak şekilde favorilere eklemek için sorgu alanının sonundaki işaretini tıklayın.
Uygulama kilitlenmeleri/yeniden başlatma işlemleri arasında günlükleri izleme
Yeni Logcat, uygulama kilitlenme ve yeniden başlatmalarında uygulamanızdaki günlükleri izlemenizi artık daha kolay hale getiriyor. Böylece, bu etkinliklerdeki önemli günlükleri kaçırmamış oluyorsunuz.
Bir Logcat, uygulama işleminizin durduğunu ve yeniden başlatıldığını fark ettiğinde çıkışta aşağıda gösterildiği gibi PROCESS ENDED
ve PROCESS STARTED
gibi bir mesaj görürsünüz:
Ayrıca, Logcat'i yeniden başlattığınızda sekme bölmeleri, filtreler ve görünüm seçenekleri gibi oturum yapılandırmanızı koruyarak oturumunuza kolayca devam edebilirsiniz.
Gradle Yönetilen Cihazlar
Otomatikleştirilmiş testleriniz için Android Sanal Cihazları kullanırken tutarlılığı, performansı ve güvenilirliği artırmak amacıyla Gradle Yönetilen Cihazlar'ı kullanıma sunuyoruz. API düzeyi 27 ve üzeri için kullanılabilen bu özellik, projenizin Gradle dosyalarında sanal test cihazları yapılandırmanıza olanak tanır. Derleme sistemi, otomatik testlerinizi yürütürken bu cihazları tümüyle yönetmek, yani oluşturmak, dağıtmak ve ortadan kaldırmak için yapılandırmaları kullanır.
Bu özellik, Gradle'a yalnızca çalıştırdığınız testler için değil, cihazların yaşam döngüsünde de görünürlük sağlayarak test deneyiminizin kalitesini aşağıdaki şekillerde iyileştirir:
- Testlerinizin yürütüldüğünden emin olmak için cihazla ilgili sorunları ele alır
- Cihazın başlatma süresini ve bellek kullanımını iyileştirmek ve testler arasında cihazları temiz bir duruma geri yüklemek için emülatör anlık görüntülerinden yararlanır
- Test sonuçlarını önbelleğe alır ve yalnızca farklı sonuçlar sağlayabilecek testleri tekrar çalıştırır.
- Testlerinizi yerel ve uzaktan test çalıştırmaları arasında çalıştırmak için tutarlı bir ortam sağlar
Ayrıca Gradle Yönetilen Cihazlar, enstrümantasyon testlerinizi çalıştırırken performansı iyileştirmek için optimize edilen Otomatik Test Cihazları (ATD) adlı yeni bir Emülatör cihaz türünü de kullanıma sunar. Test parçalama desteğiyle birlikte, genel test yürütme süresini kısaltmak için test paketinizi birden fazla ATD örneğine bölerek deneme yapabilirsiniz. Gradle Yönetilen Cihazlar ve ilişkili özellikleri hakkında daha fazla bilgi edinmek için Gradle Yönetilen Cihazlar ile testlerinizi ölçeklendirme bölümüne bakın.
DEX talimatı ofsetlerine dayalı eşleme dosyalarını kullanan R8 desteği
R8 artık satır bilgilerini optimize ederken talimat ofsetlerine dayalı olarak paylaşılan hata ayıklama bilgileri nesnelerindeki bilgileri satır tablolarıyla kodlayabilir. Bu da hat bilgilerinin ek yükünü önemli ölçüde azaltır. Bunun sonucunda, yöntemlerdeki satırlar artık ardışık değildir, ancak talimatların boyutuna bağlı olarak aralıklarla atlayabilir. Bazı araçların bu paylaşılan kodlamayı dikkate almadığını unutmayın.
Ayrıca, O (API Düzeyi 26) sürümünden başlayan Android sanal makineleri, yöntemin satır numarası bilgisi yoksa yığın izlemelerde yazdırma talimatları ofsetlerini destekler. minSdk 26 veya sonraki sürümlerle derleme yaparken ve kaynak dosya bilgisi olmadan R8, satır numarası bilgilerini tamamen çıkarır.
Durum bilgisiz lambdalar artık tekil lambdalar olarak şekerden arındırılmıyor
Durum bilgisiz lambda'lar artık şekeri alma sırasında tekil olarak ayrılmıyor. Tekiller olarak gösterim, eklenen alan ve sınıf başlatıcı nedeniyle kod boyutu ek yükü ve statik sınıf başlatma nedeniyle başlatma ek yükü ekler. Durum bilgisiz lambda'lar artık kullanım sitelerinde durum bilgili lambda'larla (yakalanmış lambda'lar) olduğu gibi tahsis edilmektedir.
R8, Android çalışma zamanlarında doğrulama yavaşlamasını önler
Android çalışma zamanlarında (Dalvik ve ART) performans sorunlarını ortadan kaldırmak için R8 (D8 değil) artık kitaplık saplamaları sunuyor ve çalışma zamanında mevcut olmayabilecek kitaplık sınıfları ve yöntemleri için kitaplık yöntemlerine yapılan çağrıları özetliyor. Böylece doğrulama ile ilgili pek çok sorun ortadan kalkar ve çalışma zamanı performansı artar. Bu özellik her zaman etkindir.
Java 8+ API şeker giderme ile JDK-11 API'leri için destek
coreKitaplıkDesugaring bağımlılığı kullanılırken artık JDK-11'e dayalı bir uygulama kitaplığı desteklenir. Daha fazla bilgi içindesugar_jdk_libs
değişiklik günlüğüne bakın.
Yama sürümleri
Android Studio Dolphin'deki Yama sürümlerinin listesi aşağıda verilmiştir.
Android Studio Dolphin | 2021.3.1 Yama 1 (Ekim 2022)
Yama 1 sürümüyle birlikte Android Studio Dolphin artık Kotlin eklentisi 1.7.20'yi desteklemektedir. Bu küçük güncelleme aşağıdaki hata düzeltmelerini de içerir:
Çözülen Sorunlar | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Android Gradle Eklentisi |
|
||||||||||||
Dexer (D8) |
|
||||||||||||
İçe Aktarma/Senkronizasyon |
|
||||||||||||
Kaynaklar |
|
||||||||||||
Desen (R8) |
|