Android Studio 3.4 (Nisan 2019)

Android Studio 3.4, çeşitli yeni özellikler ve iyileştirmeler içeren ana sürümdür.

3.4.2 (Temmuz 2019)

Bu küçük güncelleme, çeşitli hata düzeltmelerini ve performans iyileştirmelerini içerir. Önemli hata düzeltmelerinin listesini görmek için Sürüm Güncellemeleri blogundaki ilgili yayını okuyun.

3.4.1 (Mayıs 2019)

Bu küçük güncelleme, çeşitli hata düzeltmelerini ve performans iyileştirmelerini içerir. Önemli hata düzeltmelerinin listesini görmek için Sürüm Güncellemeleri blogundaki ilgili yayını okuyun.

3.4.0 ile ilgili bilinen sorunlar

  • Uygulamanız, Android Q Beta çalıştıran bir cihaza dağıtılırken profil oluşturma devre dışı bırakılır.

  • Veri Bağlama Kitaplığı kullanılırken LiveDataListener.onChanged(), NPE ile başarısız olabilir. Bu soruna yönelik bir düzeltme Android Studio 3.4.1'e eklenecek ve şu anda Android Studio 3.5'in en yeni Önizleme sürümünde mevcut. ( Sorun numarası 122066788'e bakın)

IntelliJ IDEA 2018.3.4

Temel Android Studio IDE, IntelliJ IDEA'nın 2018.3.4 sürümü boyunca yapılan iyileştirmelerle güncellenmiştir.

Android Gradle eklentisi 3.4.0 güncellemeleri

Android Gradle eklentisi 3.4.0'daki yenilikler hakkında bilgi için sürüm notlarına bakın.

Yeni Proje Yapısı İletişimi

Yeni Proje Yapısı İletişim Kutusu (PSD), bağımlılıkları güncellemeyi ve projenizin modüller, derleme varyantları, yapılandırmaları imzalama ve değişken derleme gibi farklı yönlerini yapılandırmayı kolaylaştırır.

Menü çubuğundan Dosya > Proje Yapısı'nı seçerek PSD'yi açabilirsiniz. PSD'yi, Windows ve Linux'ta Ctrl+Shift+Alt+S veya macOS'te Command+; (noktalı virgül) tuşuna basarak da açabilirsiniz. PSD'nin yeni ve güncellenmiş bölümlerinden bazılarının açıklamalarını aşağıda bulabilirsiniz.

Değişkenler

PSD'nin yeni değişkenler bölümü, bağımlılıkların sürüm numaralarını projeniz genelinde tutarlı tutmak için kullanılanlar gibi derleme değişkenleri oluşturmanıza ve yönetmenize olanak tanır.

  • Projenizin Gradle derleme komut dosyalarında zaten bulunan derleme değişkenlerini hızlıca görüntüleyin ve düzenleyin.
  • Doğrudan PSD'den proje veya modül düzeyinde yeni derleme değişkenleri ekleyin.

Not: Mevcut derleme yapılandırma dosyalarınız karmaşık Groovy komut dosyaları üzerinden değer atıyorsa bu değerleri PSD üzerinden düzenleyemeyebilirsiniz. Ayrıca, Kotlin'de yazılan derleme dosyalarını PSD kullanarak düzenleyemezsiniz.

Modüller

Mevcut bir modüldeki tüm derleme varyantlarına uygulanan özellikleri yapılandırın veya Modüller bölümünden projenize yeni modüller ekleyin. Örneğin, buradan defaultConfig özelliklerini yapılandırabilir veya imzalama yapılandırmalarını yönetebilirsiniz.

Bağımlılıklar

Aşağıdaki adımları uygulayarak projenizin bağımlılık grafiğindeki her bir bağımlılığı, proje senkronizasyonu sırasında Gradle tarafından çözümlendiği şekilde inceleyin ve görselleştirin:

  1. PSD'nin sol bölmesinde Bağımlılıklar'ı seçin.
  2. Modüller bölmesinde, çözümlenen bağımlılıkları incelemek istediğiniz modülü seçin.
  3. PSD'nin sağ tarafında, aşağıda gösterilen Çözülmüş Bağımlılıklar bölmesini açın.

Ayrıca hızlı bir şekilde bağımlılıkları arayabilir ve projenize ekleyebilirsiniz. Bunun için önce PSD'nin Bağımlılıklar bölümünden bir modül seçip Bildirilen Bağımlılıklar bölümündeki (+) düğmesini tıklayın ve eklemek istediğiniz bağımlılık türünü seçin.

Seçtiğiniz bağımlılığın türüne bağlı olarak, bağımlılığı modüle eklemenize yardımcı olan aşağıdakine benzer bir iletişim kutusu görürsünüz.

Derleme Varyantları

PSD'nin bu bölümünde, projenizdeki her modül için derleme varyantları ve ürün çeşitleri oluşturup yapılandırın. Manifest yer tutucuları ekleyebilir, ProGuard dosyaları ekleyebilir, imzalama anahtarları atayabilir ve daha fazlasını yapabilirsiniz.

Öneriler

Aşağıda gösterildiği gibi Öneriler bölümünde proje bağımlılıkları için önerilen güncellemelere bakın ve değişkenler oluşturun.

Yeni Resource Manager

Resource Manager, uygulamanızdaki kaynakları içe aktarmak, oluşturmak, yönetmek ve kullanmak için kullanabileceğiniz yeni bir araç penceresidir. Menü çubuğundan Görünüm > Araç Pencereleri > Resource Manager'ı seçerek araç penceresini açabilirsiniz. Resource Manager aşağıdakileri yapmanıza imkan sağlar:

  • Kaynakları görselleştirme: İhtiyacınız olan kaynakları hızlı bir şekilde bulmak için çekilebilir kaynakları, renkleri ve düzenleri önizleyebilirsiniz.
  • Toplu içe aktarma: Birden fazla çekilebilir öğeyi aynı anda Resource Manager araç penceresine sürükleyip bırakarak veya Çekilebilirleri içe aktarma sihirbazını kullanarak içe aktarabilirsiniz. Sihirbaza erişmek için araç penceresinin sol üst köşesindeki (+) düğmesini seçin ve ardından açılır menüden Çekilebilir Öğeleri İçe Aktar'ı seçin.
  • SVG'leri VectorDrawable nesnelerine dönüştürme: SVG resimlerinizi VectorDrawable nesnelerine dönüştürmek için Çekilebilir Öğeleri İçe Aktar sihirbazını kullanabilirsiniz.
  • Öğeleri sürükleme ve bırakma: Resource Manager araç penceresinden, çekilebilir yerleri Layout Editor'ın hem tasarım hem de XML görünümlerine sürükleyip bırakabilirsiniz.
  • Alternatif sürümleri görüntüleme: Artık Araç penceresinde bir kaynağı çift tıklayarak kaynaklarınızın alternatif sürümlerini görüntüleyebilirsiniz. Bu görünümde, oluşturduğunuz farklı sürümler ve dahil edilen niteleyiciler gösterilir.
  • Karo ve liste görünümleri: Kaynaklarınızı farklı düzenlemelerle görselleştirmek için araç penceresinin içindeki görünümü değiştirebilirsiniz.

Daha fazla bilgi edinmek için Uygulama kaynaklarını yönetme ile ilgili kılavuzu okuyun.

APK'ların profilini oluştururken ve APK'larda hata ayıklarken derleme kimliklerini kontrol etme

APK'nızın içindeki .so paylaşılan kitaplıklar için hata ayıklama sembolü dosyaları sağladığınızda Android Studio, sağlanan sembol dosyalarının derleme kimliğinin APK içindeki .so kitaplıklarının derleme kimliğiyle eşleştiğini doğrular.

APK'nızda yerel kitaplıkları bir derleme kimliğiyle derlerseniz Android Studio, simge dosyalarınızdaki derleme kimliğinin yerel kitaplıklarınızdaki derleme kimliğiyle eşleşip eşleşmediğini kontrol eder ve uyuşmazlık varsa simge dosyalarını reddeder. Derleme kimliğiyle derlemediyseniz yanlış sembol dosyaları sağlamak hata ayıklamayla ilgili sorunlara neden olabilir.

R8 varsayılan olarak etkin

R8; sudan arındırma, küçültme, karartma, optimize etme ve sıralama işlemlerini tek bir adımda gerçekleştirir. Böylece derleme performansında gözle görülür iyileşmeler elde eder. Android Gradle eklentisi 3.3.0'da kullanıma sunulan R8, artık eklenti 3.4.0 ve üst sürümlerini kullanan uygulama ve Android kitaplığı projelerinde varsayılan olarak etkin.

Aşağıdaki resimde, R8 kullanıma sunulmadan önceki derleme işlemine üst düzey bir genel bakış sunulmaktadır.

R8'den önce ProGuard, ayıklama ve şekeri ayıklama işlemlerinden farklı bir derleme adımıydı.

Artık R8 ile şeker giderme, küçültme, karartma, optimize etme ve dexing (D8) işlemleri aşağıda gösterildiği gibi tek adımda tamamlanır.

R8'de sudan arındırma, küçültme, karartma, optimize etme ve dexing işlemlerinin tümü tek bir derleme adımında gerçekleştirilir.

R8'in mevcut ProGuard kurallarınızla çalışacak şekilde tasarlandığını hatırlatmak isteriz. Dolayısıyla, R8'den yararlanmak için muhtemelen herhangi bir işlem yapmanız gerekmeyecektir. Ancak özel olarak Android projeleri için tasarlanmış olan ProGuard'dan farklı bir teknoloji olduğundan, küçültme ve optimizasyon, ProGuard'ın sahip olmadığı kodun kaldırılmasıyla sonuçlanabilir. Dolayısıyla, çok düşük olasılıkla da olsa bu kodu derleme çıkışınızda tutmak için ek kurallar eklemeniz gerekebilir.

R8'i kullanırken sorun yaşıyorsanız sorununuzun bir çözümü olup olmadığını kontrol etmek için R8 uyumluluğuyla ilgili SSS sayfasını okuyun. Çözüm belgelenmemişse lütfen hata bildiriminde bulunun. Projenizin gradle.properties dosyasına aşağıdaki satırlardan birini ekleyerek R8'i devre dışı bırakabilirsiniz:

    # Disables R8 for Android Library modules only.
    android.enableR8.libraries = false
    # Disables R8 for all modules.
    android.enableR8 = false
    
  

Not: Belirli bir derleme türünde, uygulama modülünüzün build.gradle dosyasında useProguard öğesini false olarak ayarlarsanız Android Gradle eklentisi, projenizin gradle.properties dosyasında R8'i devre dışı bırakıp bırakmamanızdan bağımsız olarak, R8'i kullanarak uygulamanızın kodunu bu derleme türü için küçültür.

Gezinme bileşeninin desteklediği tüm bağımsız değişken türleri artık Gezinme Düzenleyicisi'nde desteklenmektedir. Desteklenen türler hakkında daha fazla bilgi için Hedefler arasında veri iletme bölümüne bakın.

Düzen Düzenleyici iyileştirmeleri {:#layout-editor}

Düzen Düzenleyici'deki Özellikler bölmesi, yapılandırabileceğiniz özellikleri göstermek için genişletebileceğiniz bölümler içeren tek bir sayfa halinde basitleştirildi. Özellikler bölmesi aşağıdaki güncellemeleri de içerir:

  • Yeni bir Bildirilen Özellikler bölümü, düzen dosyasının belirlediği özellikleri listeler ve hızlıca yenilerini eklemenize olanak tanır.
  • Özellikler bölmesinde artık her bir özelliğin yanında, özelliğin değeri bir kaynak referansı olduğunda sabit, aksi halde boş olan göstergeler bulunuyor.
  • Hatalı veya uyarılı özellikler artık vurgulanıyor. Kırmızı vurgular hataları (örneğin, geçersiz düzen değerleri kullandığınızda), turuncu vurgular ise uyarıları belirtir (örneğin, sabit kodlanmış değerler kullandığınızda).

Bağımlılıkları hızlı bir şekilde içe aktarmak için yeni niyet işlemi

Kodunuzda belirli Jetpack ve Firebase sınıflarını kullanmaya başlarsanız yeni bir niyet işlemi, henüz yapmadıysanız projenize gerekli Gradle kitaplığı bağımlılığını eklemenizi önerir. Örneğin, önce gerekli android.arch.work:work-runtime bağımlılığını içe aktarmadan WorkManager sınıfına başvuruyorsanız aşağıda gösterildiği gibi tek bir tıklamayla bunu kolayca yapmanızı sağlar.

Jetpack, destek kitaplığını yönetimi ve güncellenmesi daha kolay olan ayrı paketler halinde yeniden paketlediğinden bu amaca yönelik işlem, yalnızca kullanmak istediğiniz Jetpack bileşenleri için ihtiyaç duyduğunuz bağımlılıkları hızlıca eklemenize yardımcı olur.