Android
Android Studio 2.2 ve Gelen Yenilikler-2
Diğer makalemizi de incelemenizi tavsiye ederim. Android Studio’daki yenilikleri denemek için Canary Channel’dan Adroid Studio 2.2 Preview 3 versiyonu indirebilir. Layout Editor Layout tasarımında kullanılan view’lar için daha fazla seçenek ve Blueprint Mode, Design Mode olarak iki farklı mode eklendi. Blueprintmode’da ek...
Diğer makalemizi de incelemenizi tavsiye ederim. Android Studio’daki yenilikleri denemek için Canary Channel’dan Adroid Studio 2.2 Preview 3 versiyonu indirebilir.
Layout Editor
Layout tasarımında kullanılan view’lar için daha fazla seçenek ve Blueprint Mode, Design Mode olarak iki farklı mode eklendi. Blueprintmode’da eklediğiniz view’ların (Button, TextView vs.) diğer view’lara göre konumu ve ekrandaki konumunu görebilmemizi sağlıyor. Buradan padding, margin vs. değerlerini de görebiliyoruz. Design Mode’da ise tasarım görünmektedir.
Karmaşık bir sayfa tasarımının Design Mode (Sol) ve Blueprint Mode (Sağ) görünümü:
Constraint Layout
Google tasarımı kolaylaştıran view’ları birbirine göre konumlandıran ve kısıtlayan yeni bir layout geliştirdi. Bu layout’u kullanabilmek için gradle linkini eklemek gerekiyor.
dependencies {
.
.
compile 'com.android.support.constraint:constraint-layout:1.0.0-alpha2'
.
.
}
Aşağıdaki gibi ConstraintLayout’u kullanabiliriz.
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/constraint"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:id="@+id/textview"
android:layout_width="379dp"
android:layout_height="54dp"
android:background="@android:color/holo_blue_bright"
android:gravity="center"
android:text="Hello World"
app:layout_constraintLeft_toLeftOf="@+id/constraint"
app:layout_constraintBottom_toTopOf="@+id/button"
android:layout_marginBottom="96dp" />
<Button
android:id="@+id/button"
android:layout_width="252dp"
android:layout_height="wrap_content"
android:background="@android:color/holo_blue_bright"
android:text="OK"
app:layout_constraintLeft_toLeftOf="@+id/textview"
app:layout_constraintTop_toTopOf="@+id/constraint"
android:layout_marginTop="232dp"
app:layout_constraintRight_toRightOf="@+id/textview" />
</android.support.constraint.ConstraintLayout>
Constraint Layout karmaşık tasarımları birbirine bağımlı layout’lar olmadan kolay bir şekilde tasarlamamıza imkan sağlıyor. View’lar birbirine göre konumlandırıldığında herhangi bir view’ın konumu değiştirildiğinde diğer view’da konumunu değiştiriyor. Yukarıdaki ve aşağıdaki görsellerde view’ların birbirlerine ve ekrana göre nasıl konumlandırıldığını görebilirsiniz. Sağ taraftaki Seçenekler kısmından view’lar üzerinde değişiklik yapabiliriz. ConstraintLayout ile birlikte iç içe bağımlı layout’lara gerek olmadığı için ekstra performans artışı sağlamaktadır.
Layout Inspector
Bu özellik sayesinde emulator veya cihaz üzerinden ekran görüntüsü alarak ekranı ve ekrandaki her bir bileşeni detaylı analiz edebiliriz. Aşağıdaki ekran görüntüsünde de görüldüğü gibi Android Monitor tabındaki solda beyaz ile çizili butona tıklayarak Android Studio’ya bağlı cihaz üzerinden ekran görüntüsü alabiliriz.
Aşağıdaki ekran görüntüsünde uygulamanın ekran tasarımını detaylı bir şekilde analiz gözükmektedir.
FireBase
Google 2014 yılında FireBase’i satın aldı. Facebook Parse.com’u kapatma kararı alınca Google bu alandaki boşluğu FireBase yeni özellikler ekleyerek doldurdu. FireBase verilerimizi uzak sunucularda gerçek zamanlı depolayabildiğimiz bulut tabanlı bir servistir. FireBase ile dataları yönetme, kullanıcılara anlık bildirim gönderme, kullanıcı takip vb. işlemleri sunucu tarafında bir satır dahi kod yazmadan yapabiliriz. Android Studio 2.2 üzerinde FiraBase plugini mevcut. Tools (Araçlar) altından FireBase’i çalıştırabilir ve uygulamanızda kullanabiliriz. FireBase dökümanlarına buradan ulaşabilir.
Aşağıdaki ekran görüntüsünde görüldüğü gibi eklemek istediğiniz modülü seçtiğimizde, bizi adım adım nasıl ekleneceği konusunda yönlendiriyor.
Code Sample Browser
Kullandığımız herhangi bir class’ın kullanımı ile ilgili örnekleri Android Studio içerisinde kolayca bulabiliyoruz. Örneğini bulmak istediğimiz kod parçacığını seçip sağ tıklayıp “Find Sample Code” tıkladığımızda ilgili kod parçaçığının kullanıldığı örnekler listelenmektedir.
Build
Android Studio 2.2 artık CMake ve NDK build destekliyor. Eğer CMake and NDK projelerini Gradle a eklersek, otomatik kod dosyalarını Android Studio üzerinde açıp düzenleme ve debug işlemlerini yapabileceğiz.
Android Studio 2.2 ye Java8 ve geliştirilmiş C++ desteği geldi. Eğer Android N ve üzeri bir cihazda geliştirme yapıyorsak, debug konusunda lldb’nin gelişmiş özelliklerini kullanabiliriz. Örneğin debug noktalarında ram’de ki içeriklere bakabiliriz.
Test
Android Studio 2.2 ile birlikte uygulamayı kullanırken test senaryosunu kaydedebilir ve test kodunu oluşturabiliriz. Bu test kodu ister lokal de istenirse de bulut tabanlı Firebase Test Lab’da test edilebilir.
Firebase Test Lab: Android uygulamalarını test etmek için bulut tabanlı alt yapı sağlayan bir sistemdir.
Apk Analyzer
Build->APK Analyzer diyerek çalıştırabiliriz. Yeni analyzer ile farklı bileşenlerin boyutlarını görebilir ve içerikleri anlayabiliriz. Apk Analyzer hem raw (png vs.) dosyalarının boyutunu hemde indirmesi gereken bileşenlerin boyutlarını gösterir. Bu da uygulamayı markete koyduğumuzda boyutu hakkında bize bilgi verir. Bu bilgiler apk boyutunu nerelerden küçülteceğimiz konusunda bize yardımcı olur.
Aşağıdaki ekran görüntüsü apk analyzer çıktısıdır.
Android Studio 2.2 ile birlikte derleme işlemi 10 kat, emulator de 3 kat daha hızlı hale getirildi.
Android Studio’nun Google+ hesabını ve Twitter hesabını takip ederek yeniliklerden haberdar olabilirsiniz.
Teşekkürler
KAYNAKLAR
http://android-developers.blogspot.com.tr/2016/05/android-studio-22-preview-new-ui.html
https://codelabs.developers.google.com/codelabs/constraint-layout/index.html#0