Android Studio 3.0 (Ekim 2017)

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

macOS kullanıcıları: Android Studio'nun eski bir sürümünü güncelliyorsanız "Yükleme alanında bazı çakışmalar bulundu" yazan bir güncelleme hatası iletişim kutusuyla karşılaşabilirsiniz. Bu hatayı yok sayıp İptal'i tıklayarak yüklemeye devam edebilirsiniz.

3.0.1 (Kasım 2017)

Bu, Android Studio 3.0'daki genel hata düzeltmelerini ve performans iyileştirmelerini içeren küçük bir güncellemedir.

Android Plugin for Gradle 3.0.0

Yeni Gradle için Android eklentisi çeşitli iyileştirmeler ve yeni özellikler içerir ancak öncelikle çok sayıda modül içeren projelerde derleme performansını artırır. Yeni eklentiyi bu büyük projelerle kullanırken aşağıdakilerle karşılaşabilirsiniz:

  • Yeni gecikmeli bağımlılık çözümü sayesinde daha hızlı derleme yapılandırma süreleri.
  • Yalnızca oluşturduğunuz projeler ve varyantlar için varyantlara duyarlı bağımlılık çözümü.
  • Koda veya kaynaklara basit değişiklikler uygularken daha hızlı artımlı derleme süreleri.

Not: Bu iyileştirmeler, eklentinin davranışlarında, DSL'sinde ve API'lerinde bazı değişiklikler yapılmasını gerektirdi. 3.0.0 sürümüne yükseltmek için derleme dosyalarınızda ve Gradle eklentilerinizde değişiklik yapmanız gerekebilir.

Bu sürümde ayrıca şunlar da yer alıyor:

  • Android 8.0 desteği.
  • Dil kaynaklarına dayalı olarak ayrı APK'lar oluşturma desteği.
  • Java 8 kitaplıkları ve Java 8 dil özelliklerinin (Jack derleyici olmadan) desteği.
  • Android Test Destek Kitaplığı 1.0 (Android Test Utility ve Android Test Orchestrator) desteği.
  • ndk-build ve cmake derleme hızları iyileştirildi.
  • Gradle senkronizasyon hızı iyileştirildi.
  • AAPT2 artık varsayılan olarak etkindir.
  • ndkCompile kullanımı artık daha kısıtlı. Bunun yerine, paketlemek istediğiniz yerel kodu APK'nızda derlemek için CMake veya ndk-build kullanarak geçiş yapmanız gerekir. Daha fazla bilgi için ndkcompile'dan taşıma başlıklı makaleyi inceleyin.

Değişiklikler hakkında daha fazla bilgi için Android Plugin for Gradle sürüm notlarını inceleyin.

Yeni eklentiye yükseltmeye hazırsanız Android Plugin for Gradle 3.0.0'a taşıma başlıklı makaleyi inceleyin.

Kotlin desteği

Google I/O 2017'de duyurulduğu gibi, Kotlin programlama dili artık Android'de resmi olarak destekleniyor. Bu sürümle birlikte Android Studio, Android geliştirme için Kotlin dil desteğini içeriyor.

Java dosyasını Kotlin'e dönüştürerek (Code > Convert Java File to Kotlin File'ı tıklayın) veya Yeni Proje sihirbazını kullanarak Kotlin'in etkinleştirildiği yeni bir proje oluşturarak Kotlin'i projenize dahil edebilirsiniz.

Başlamak için projenize Kotlin'i nasıl ekleyeceğinizi öğrenin.

Java 8 dili özelliklerini destekleme

Artık belirli Java 8 dili özelliklerini kullanabilir ve Java 8 ile oluşturulmuş kitaplıkları tüketebilirsiniz. Jack artık gerekli değil. Varsayılan araç zincirinde yerleşik olarak bulunan geliştirilmiş Java 8 desteğini kullanmak için önce Jack'i devre dışı bırakmanız gerekir.

Projenizi yeni Java 8 dil araç zincirini destekleyecek şekilde güncellemek için Proje Yapısı iletişim kutusunda (Dosya > Proje Yapısı'nı tıklayın) Kaynak Uyumluluğu ve Hedef Uyumluluğu'nu 1.8 olarak güncelleyin. Daha fazla bilgi için Java 8 dili özelliklerini kullanma başlıklı makaleyi inceleyin.

Android Profiler

Yeni Android Profiler, Android Monitor aracının yerini alıyor ve uygulamanızın CPU, bellek ve ağ kullanımını gerçek zamanlı olarak ölçmek için yeni bir araç paketi sunuyor. Kodunuzun yürütülme süresini ölçmek, yığın dökümlerini yakalamak, bellek ayırmalarını görüntülemek ve ağ üzerinden iletilen dosyaların ayrıntılarını incelemek için örnek tabanlı yöntem izleme gerçekleştirebilirsiniz.

Açmak için View > Tool Windows > Android Profiler'ı tıklayın (veya araç çubuğunda Android Profiler'ı tıklayın).

Pencerenin üst kısmındaki etkinlik zaman çizelgesi, dokunma etkinliklerini, tuş basma işlemlerini ve etkinlik değişikliklerini gösterir. Böylece zaman çizelgesindeki diğer performans etkinliklerini daha iyi anlayabilirsiniz.

Not: Logcat görünümü de ayrı bir pencereye taşındı (önceden kaldırılan Android Monitor'un içindeydi).

Android Profiler'ın genel bakış zaman çizelgesinde CPU, MEMORY veya NETWORK zaman çizelgelerini tıklayarak ilgili profiler araçlarına erişin.

CPU Profiler

CPU Profiler, örnek veya enstrümanlı bir CPU izi tetikleyerek uygulamanızın CPU ileti dizisi kullanımını analiz etmenize yardımcı olur. Ardından, çeşitli veri görünümleri ve filtreler kullanarak CPU performansıyla ilgili sorunları giderebilirsiniz.

Daha fazla bilgi için CPU Profiler kılavuzuna bakın.

Memory Profiler

Bellek Profiler, kekemeliğe, donmalara ve hatta uygulama kilitlenmelerine yol açabilecek bellek sızıntılarını ve bellek değişimini belirlemenize yardımcı olur. Uygulamanızın bellek kullanımının gerçek zamanlı grafiğini gösterir, yığın dökümü almanıza, çöp toplama işlemlerini zorlamanıza ve bellek ayırmalarını izlemenize olanak tanır.

Daha fazla bilgi için Bellek Profil Oluşturucu kılavuzuna bakın.

Network Profiler

Ağ Profil Oluşturucu, uygulamanızın ağ etkinliğini izlemenize, ağ isteklerinizin her birinin yükünü incelemenize ve ağ isteğini oluşturan koda geri bağlanmanıza olanak tanır.

Daha fazla bilgi için Ağ Profil Oluşturucu Kılavuzu'nu inceleyin.

APK profili oluşturma ve hata ayıklama

Android Studio artık herhangi bir APK'yı Android Studio projesinden oluşturmanıza gerek kalmadan profillemenize ve hata ayıklamanıza olanak tanıyor. Bunun için APK'nın hata ayıklamayı etkinleştirecek şekilde oluşturulması ve hata ayıklama simgeleri ile kaynak dosyalarına erişiminizin olması gerekiyor.

Başlamak için Android Studio Karşılama ekranında Profile or debug APK'yı (APK'da profil oluşturma veya hata ayıklama) tıklayın. Alternatif olarak, açık bir projeniz varsa menü çubuğundan Dosya > APK'da profil oluşturma veya hata ayıklama'yı tıklayın. Bu işlem, açılmış APK dosyalarını gösterir ancak kodu derlemez. Bu nedenle, kesme noktalarını düzgün bir şekilde eklemek ve yığın izlemeleri görüntülemek için Java kaynak dosyalarını ve yerel hata ayıklama sembollerini eklemeniz gerekir.

Daha fazla bilgi için Önceden oluşturulmuş APK'lar için profil oluşturma ve hata ayıklama başlıklı makaleyi inceleyin.

Cihaz Dosyası Gezgini

Yeni Cihaz Dosya Gezgini, bağlı cihazınızın dosya sistemini incelemenize ve cihaz ile bilgisayarınız arasında dosya aktarmanıza olanak tanır. Bu araç, DDMS'de bulunan dosya sistemi aracının yerini alır.

Açmak için Görünüm > Araç Pencereleri > Cihaz Dosyası Gezgini'ni tıklayın.

Daha fazla bilgi için Cihaz Dosya Gezgini Rehberi'ne bakın.

Hazır Uygulamalar desteği

Android Anında Uygulamaları için yeni destek sayesinde, projenizde iki yeni modül türü kullanarak Anında Uygulamalar oluşturabilirsiniz: Anında Uygulama modülleri ve Özellik modülleri (bunlar için Anında Uygulama Geliştirme SDK'sını yüklemeniz gerekir).

Android Studio, yeni bir modülerleştirme yeniden düzenleme işlemi de içerir. Bu işlem, mevcut bir projede Anında Uygulamalar desteği eklemenize yardımcı olur. Örneğin, projenizi yeniden düzenleyerek bazı sınıfları anlık uygulama özellik modülüne yerleştirmek istiyorsanız Project (Proje) penceresinde sınıfları seçip Refactor > Modularize'ı (Yeniden düzenle > Modülerleştir) tıklayın. Açılan iletişim kutusunda, sınıfların yerleştirileceği modülü seçin ve Tamam'ı tıklayın.

Hazır uygulamanızı test etmeye hazır olduğunuzda, çalıştırma yapılandırması başlatma seçeneklerinde hazır uygulamanın URL'sini belirterek bağlı bir cihazda hazır uygulama modülünüzü oluşturup çalıştırabilirsiniz: Çalıştır > Yapılandırmaları Düzenle'yi seçin, hazır uygulama modülünüzü seçin ve ardından Başlatma Seçenekleri'nin altında URL'yi ayarlayın.

Daha fazla bilgi için Android hazır uygulamaları başlıklı makaleyi inceleyin.

Android Things modülleri

Android destekli IoT cihazları için geliştirmeye başlamanıza yardımcı olmak üzere Yeni Proje ve Yeni Modül sihirbazlarında yeni Android Things şablonları.

Daha fazla bilgi için Android Things projesi oluşturma başlıklı makaleyi inceleyin.

Uyarlanabilir simgeler sihirbazı

Image Asset Studio artık vektör çizilebilirleri destekliyor ve aynı anda eski cihazlar için geleneksel simgeler ("Eski" simgeler) oluştururken Android 8.0 için uyarlanabilir başlatıcı simgeleri oluşturmanıza olanak tanıyor.

Başlamak için projenizdeki res klasörünü sağ tıklayın ve Yeni > Resim Öğesi'ni tıklayın. Öğe Stüdyosu penceresinde, simgeler için Başlatıcı Simgeleri (Uyarlanabilir ve Eski)'ni seçin.

Not: Uyarlanabilir başlatıcı simgelerini kullanmak için compileSdkVersion değerini 26 veya daha yüksek bir değere ayarlamanız gerekir.

Daha fazla bilgi için Uyarlanabilir simgeler hakkında bilgi edinin.

Yazı tipi kaynakları için destek

Android 8.0'daki yeni yazı tipi kaynaklarını desteklemek için Android Studio'da yazı tiplerini uygulamanıza paketlemenize veya projenizi yazı tiplerini cihazda indirmek üzere (kullanılabilir olduğunda) yapılandırmanıza yardımcı olacak bir yazı tipi kaynakları seçici bulunur. Düzen düzenleyicisi, düzeninizdeki yazı tiplerini de önizleyebilir.

İndirilebilir yazı tiplerini denemek için cihazınızda veya emülatörünüzde Google Play Hizmetleri v11.2.63 ya da sonraki bir sürümün yüklü olduğundan emin olun. Daha fazla bilgi için İndirilebilir Yazı Tipleri hakkında bilgi edinin.

Firebase App Indexing Assistant

Firebase Asistanı, Uygulama Endeksleme'yi test etme konusunda yeni bir eğitimle güncellendi. Asistan'ı açmak için Araçlar > Firebase'i seçin. Ardından Uygulama Dizine Ekleme > Uygulama Dizine Ekleme Testi'ni seçin.

Eğitimde, herkese açık ve kişisel içeriklerinizi dizine ekleme işlemini test etmenize olanak tanıyan yeni düğmeler yer alıyor:

  • URL'lerinizin Google Arama sonuçlarında gösterildiğini doğrulamak için 2. adımda Arama sonuçlarını önizle'yi tıklayın.
  • 3. adımda, uygulamanızdaki dizine eklenebilir nesnelerin kişisel içerik dizinine eklendiğini doğrulamak için Hata olup olmadığını kontrol et'i tıklayın.

Uygulama Bağlantıları Asistanı aşağıdaki yeni özelliklerle güncellendi:

  • Niyet filtrelerinizin gerçek dünyadaki URL'leri işlediğinden emin olmak için her URL eşlemesi için URL testleri ekleyin.

    Ayrıca, aşağıdaki <tools:validation> etiketini kullanarak bu URL testlerini manuel olarak da tanımlayabilirsiniz.

  • Google Smart Lock'u desteklemek için uygun nesne girişiyle bir Digital Asset Links dosyası oluşturun ve manifest dosyanıza ilgili asset_statements <meta-data> etiketini ekleyin.

URL amaç filtresi doğrulayıcısı

Android Studio artık manifest dosyasında, amaç filtresi URL'lerinizi test etmenize olanak tanıyan özel bir etiketi destekliyor. Bu etiketler, Uygulama Bağlantıları Asistanı'nın sizin için oluşturabileceği etiketlerle aynıdır.

Bir amaç filtresi için test URL'si bildirmek istiyorsanız ilgili <intent-filter> öğesinin yanına bir <tools:validation> öğesi ekleyin. Örneğin:

      <activity ...>
          <intent-filter>
              ...
          </intent-filter>
          <tools:validation testUrl="https://www.example.com/recipe/1138" />
      </activity>
    
    

xmlns:tools="http://schemas.android.com/tools" öğesini <manifest> etiketine de eklediğinizden emin olun.

Test URL'lerinden herhangi biri amaç filtresi tanımını geçemezse lint hatası gösterilir. Bu tür bir hata, hata ayıklama varyantları oluşturmanıza yine de olanak tanır ancak yayın derlemelerinizi bozar.

Layout Editor

Düzen Düzenleyici, aşağıdakiler de dahil olmak üzere çeşitli geliştirmelerle güncellendi:

  • Yeni araç çubuğu düzeni ve simgeleri.
  • Bileşen ağacında güncellenen düzen.
  • Sürükle ve bırak görünümü ekleme özelliği iyileştirildi.
  • Düzenleyicinin altında, düzeltme önerileriyle birlikte (varsa) tüm sorunları gösteren yeni hata paneli.
  • ConstraintLayout ile geliştirme için çeşitli kullanıcı arayüzü iyileştirmeleri yapıldı. Örneğin:
    • Engeller oluşturmak için yeni destek.
    • Grup oluşturma için yeni destek: Araç çubuğunda Kurallar > Grup Ekle'yi seçin (ConstraintLayout 1.1.0 beta 2 veya daha yeni bir sürüm gerektirir)
    • Zincir oluşturmak için yeni kullanıcı arayüzü: Birden fazla görünüm seçin, ardından sağ tıklayıp Zincir'i seçin.

Layout Inspector

Düzen Denetçisi, özellikleri ortak kategorilerde gruplandırma ve hem Görünüm Ağacı hem de Özellikler bölmelerinde yeni arama işlevi gibi geliştirmeler içerir. Bu geliştirmeler, uygulama düzenlerinizdeki sorunları ayıklamayı kolaylaştırır.

APK Analyzer

Artık apkanalyzer aracıyla APK Analiz Aracı'nı komut satırından kullanabilirsiniz.

APK Analizcisi de aşağıdaki iyileştirmelerle güncellendi:

  • ProGuard ile oluşturulan APK'lar için DEX görüntüleyiciye aşağıdaki gibi özellikler ekleyen ProGuard eşleme dosyalarını yükleyebilirsiniz:
    • Kodu küçültürken düğümlerin kaldırılmaması gerektiğini belirtmek için düğümler kalınlaştırılır.
    • Küçültme işlemi sırasında kaldırılan düğümleri gösterme düğmesi.
    • Ağaç görünümünde ProGuard tarafından karartılan düğümlerin orijinal adlarını geri yükleyen bir düğme.
  • DEX Viewer artık her paketin, sınıfın ve yöntemin tahmini boyut etkisini gösteriyor.
  • Alanları ve yöntemleri göstermek ya da gizlemek için üst kısımdaki yeni filtreleme seçenekleri.
  • Ağaç görünümünde, DEX dosyasında tanımlanmamış referanslar olan düğümler italik olarak görünür.

Daha fazla bilgi için Derlemenizi APK Analizcisi ile Analiz Etme başlıklı makaleyi inceleyin.

D8 DEX derleyicisi için önizleme

Android Studio 3.0, D8 adlı isteğe bağlı yeni bir DEX derleyici içerir. Bu derleyici, DX derleyicisinin yerini alacak ancak yeni D8 derleyicisini hemen kullanmaya başlayabilirsiniz.

DEX derlemesi, uygulamanızın derleme süresini, .dex dosya boyutunu ve çalışma zamanı performansını doğrudan etkiler. Yeni D8 derleyicisi, mevcut DX derleyicisiyle karşılaştırıldığında daha hızlı derleme yapar ve aynı veya daha iyi uygulama çalışma zamanı performansına sahipken daha küçük .dex dosyalar oluşturur.

Bu özelliği denemek için projenizin gradle.properties dosyasında aşağıdakileri ayarlayın:

android.enableD8=true
    

Daha fazla bilgi için D8 derleyicisiyle ilgili blog yayınına göz atın.

Google'ın Maven deposu

Android Studio artık Android Destek Kitaplığı, Google Play Hizmetleri, Firebase ve diğer bağımlılıklarla ilgili güncellemeleri almak için Android SDK Yöneticisi'ne bağlı kalmak yerine varsayılan olarak Google'ın Maven deposunu kullanıyor. Bu sayede, özellikle sürekli entegrasyon (CI) sistemi kullanırken kitaplıklarınızı güncel tutmak kolaylaşır.

Tüm yeni projelerde artık varsayılan olarak Google Maven deposu bulunur. Mevcut projenizi güncellemek için üst düzey build.gradle dosyasının repositories bloğuna google() ekleyin:

      allprojects {
          repositories {
              google()
          }
      }
    
    

Google'ın Maven deposu hakkında daha fazla bilgiyi burada bulabilirsiniz.

Diğer değişiklikler

  • Android Studio ile yerel hata ayıklama artık 32 bit Windows'u desteklemiyor. Bu platformu çok az geliştirici kullandığı için diğer platformlara odaklanmayı tercih ettik. 32 bit Windows kullanıyorsanız ve yerel kodu ayıklamayı planlıyorsanız Android Studio 2.3'ü kullanmaya devam etmeniz gerekir.
  • Temel IDE, IntelliJ 2017.1.2 sürümüne yükseltildi. Bu sürümde 2016.3 ve 2017.1 sürümlerinden Java 8 dilinde yeniden düzenleme, parametre ipuçları, semantik vurgulama, sürükleyerek taşınabilen kesme noktaları ve aramadaki anlık sonuçlar gibi birçok yeni özellik eklendi.
  • Birçok yeni lint denetimi eklendi.
  • Ayrıca en son Android Emulator güncellemelerine de göz atın.