GELECEĞİ YAZANLAR BLOG

Yeni Blog Yaz

Android 8.1 İle Gelen Yenilikler

Burhan Aras - 06 Aralık 2017

Merhaba sevgili Android severler,

Ağustos ayında Android 8’in (Android Oreo API 27) açıklanması ile birlikte hepimizi yeni bir heyecan dalgası yakaladı. Google’ın Pixel ya da Nexus marka telefonları çoktan Android Oreo’ya güncellendiler. Geçtiğimiz hafta ise Android 8.1 Developer Preview yani geliştiriciler için sunulan versiyon duyuruldu. Bu yazımızda Android 8.1 ile gelen yenilikleri kısaca açıklayacağız.

Android Oreo

NEURAL NETWORKS API

Yapay zeka ve  makine öğrenmesi son dönemin en popüler konusu. Bunların temelinde de Neural network denilen yapay sinir ağları mevcut. Android 8.1 ile birlikte gelen Neural Networks API (NNAPI) sayesinde, Android cihazlar üzerinde çalışan yapay zeka uygulamaları geliştirilmesini kolaylaştırıyor. Bu API sayesinde yapay zeka uygulamalarında kullanılan model üretme, eğitme ve çalıştırma işlemleri yapılırken cihazın donanımsal kaynaklarının daha verimli kullanılması sağlanıyor. (Hardware accelerated denilen yöntemler.) Bunun beraberinde çok yakında Tensorflow’un düşük donanımlı cihazlar için olan versiyonu Tensorflow Lite’ın da çok yakında çıkacağı açıklandı.

DÜŞÜK HAFIZALI CİHAZLAR İÇİN OPTİMİZASYON

Android’in bu sürümünde düşük hafızalı cihazları cihazlara daha fazla önem veriliyor. Bilindiği gibi düşük hafızalı cihazları ayırt edebilmek için  API 19’da ActivityManager.isLowRamDevice()  diye bir method gelmişti. Bu metod, cihazın hafızası 1 GB’dan az ise TRUE döndürüyor.

Bu sürümde de manifesto içinde FEATURE_RAM_LOW, FEATURE_RAM_NORMAL gibi özellikler belirtip(<uses-feature>), uygulamam düşük hafızalı cihazlara dağıtılmasın diyebiliyoruz.

Örneğin:

<uses-feature android:name="android.hardware.ram.low" />

<uses-feature android:name="android.hardware.ram.normal" />

 

BİLDİRİMLER

Android Oreo ile pil ömrü ve kullanıcı deneyimi açısından uygulamalara bazı sınırlamalar getirildi. Bildirimler de bundan nasibini almaya devam ediyor. Sesli bildirim mesajları için saniyede bir bildirim şeklinde bir kısıtlama geldi. Yani uygulamanız sesli bildirim atarken bir saniye içinde birden fazla bildirim atarsa sadece bir tanesinin sesi duyulacak. Kalan bildirimler gösterilse de sessiz olacak. Bizim için büyük bir kayıp değil aslında. :)

Bir diğer değişiklik ise düşük hafızalı cihazlarda NotificationListenerService ve ConditionProviderService artık kullanılamayacak.

EDITTEXT GÜNCELLEMESİ

Şuan Android Studio’ya girip Edittext.getText() yazdığınız zaman size CharSequence türünden bir nesne döndürecektir. Fakat Android 8.1 (API 27) ile birlikte artık Editable döndürecek. Endişelenmenize gerek yok, eski uygulamalarınız hata vermeyecek çünkü Editable sınıfı CharSequence arayüzünü implemente ediyor. Yani geriye yönelik uyumlu bir değişiklik.

Bunun ne faydası olacak derseniz, Editable sınıfı Spannable arayüzünü de implemente ettiği için Edittext’in fontunu değiştirebilir, makyajlamasını yapabileceksiniz.

 

DAHA GÜVENLİ WEBVİEW

Uygulama içindeki WebView’ların daha güvenli çalışması için Safe Browsing API (Güvenli Tarama Arayüzü) geldi. Bu sayede uygulama içindeki webview’dan, Google’ın tehlikeli olarak belirlediği bir web sayfasına girildiği zaman uygulama bu durumu anlayarak kullanıcıyı uyaracak. Devam etmek ya da geri dönmek kullanıcının tercihine bağlı.

Bunun için AndroidManifest.xml dosyasına aşağıdaki meta-data tag’ini eklememiz gerekiyor.

<meta-data android:name="android.webkit.WebView.EnableSafeBrowsing"

                  android:value="true" />

 

Ayrıca webView’ler için startSafeBrowsing() isimli yeni bir metod da bizi bekliyor.

 

VİDEO’DAN KARE YAKALAMA

MediaMetaDataRetriever sınıfının artık getScaledFrameAtTime() isimli yeni bir metodu var. Bu metod video içinde istenilen ana ait görüntüyü yakalayarak bize Bitmap olarak döndürebiliyor. Dönen Bitmap’in boyutlarını da ayarlama yeteneği var.

Daha önce var olan getFrameAtTime() metoduna göre daha performanslı çalıştığı için Google tarafından tavsiye ediliyor.

 

SHARED MEMORY API

Sıklıkla kullandığımız SharedPreferences yapısına alternatif bir sınıf. Anonim bir ortak hafıza alanı üzerine yazıp, okumayı sağlıyor. Yazma ve okuma işlemleri için güvenlik seviyesi belirlenebiliyor. Ayrıca bir SharedMemory nesnesi Parcellable arayüzünü implemente ettiği için Activity’ler arasında da rahatlıkla gönderilebiliyor.

NDK içindeki ASharedMemory sınıfıyla da uyumlu olduğu için NDK tarafında da kullanılarak büyük miktarda verinin uygulamalar arası transferine imkan sağlıyor.

 

WALLPAPER COLORS API

Cihazınızın duvar resmindeki renkleri tespit etmek için geliştirilen bu API sayesinde uygulamamıza farklı renklerde dinamik bir stil kazandırabiliyoruz. Özellikle Launcher uygulamaları için güzel bir özellik olabilir. WallPaperColor sınıfını buradan inceleyebilirsiniz.



 

7 Cevap

PeterSmith

02 Nisan 2018

It appears like just yesterday we were making the most of our first genuine taste of Android Oreo, yet as of now, Google is revealing a refreshed rendition of its new versatile OS. Here are the best new highlights online dissertation proposal service and changes in the last Android 8.1 Oreo work, alongside its discharge date and how you can download it.

Ahmet

19 Ekim 2018

Yeni İş fikirleri de aklında bulunsun bence. Hem 2018 hem 2019. Yeni İş Fikirleri 2019

Burak SARI

15 Mayıs 2018

Her zaman en günceli, en iyisidir :)

 

Winsa | Sineklik | Cam Balkon | Sarıyer 

Berkay

18 Temmuz 2018

General Mobile GM8 Android One cihazını kullanıyorum ve şuan Android 8.1 güncellemesi gelince çok güzel oldu. Yazınızdaki bilgiler için teşekkür ederim. Ben de odeabank sms ile kredi başlıklı bir yazı oluşturdum.

Tamir

10 Ekim 2018

Sayfalar

Yorum yapmak için Giriş Yapın ya da Üye olun.