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...

Mustafa Sevgi |

17.06.2016

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://medium.com/exploring-android/exploring-the-new-android-constraintlayout-eed37fe8d8f1#.o26mgjag8

https://codelabs.developers.google.com/codelabs/constraint-layout/index.html#0


 

Mustafa Sevgi |

17.06.2016

Yorumlar