Android Q : Bilmeniz Gereken Önemli Özellikler

Furkan Aşkın
6 min readMar 20, 2019

--

Görsel : 9to5google.com

Merhaba,

Google, I/O 2019 Yaklaşırken bizlere Android Q Beta’yı duyurdu. Hemen hemen hepiniz yeni özelliklere bir göz atmışsınızdır ancak ben geliştiriciler için daha önemli gördüğüm kısımları bir blogpostda toplamak istedim, hızlıca başlayalım.

Kullanıcı İzinleri

Google’ın Android Marshmallow sürümünde kullanıcıdan izin alma konusuna özen gösterdiğini görmüştük ancak yeterli gelmemiş olacak ki bu değişiklikler Android Q ile devam ediyor.

Görsel : android-developers.googleblog.com

Android Developers’da yayınlanan blogposta göre eğer bir uygulama kullanıcıdan konum erişimi için izin istediği taktirde kullanıcıya;

  • Her zaman izin ver
  • Yalnızca uygulama kullanılırken izin ver
  • İzin verme

gibi seçenekler sunulacağını belirtmiş. Ayrıca, Google şunu da belirtiyor:

“Android Q işletim sistemi, kullanıcılara uygulamalar üzerinde daha da fazla kontrol sağlayacak. Ayrıca kullanıcılar, paylaşılan dosyalara erişimi kontrol edebilecek. Kullanıcılar, yeni çalışma zamanı izinleri ile uygulamaların Ses,Fotoğraf,Video dosyalarına erişimini kontrol edebilecek. Kullanıcı, indirmeler için uygulamaların hangi dosyalara erişebileceğine kendisi karar verebilecek. Bunun için sistem dosyası seçicisini kullanması gerekecek.”

Görsel : androidpolice.com

Spam Aramalar

Hazır izinlere değinmişken ufak bir bilgi; Android Q, kullanıcının rehberinde olmayan numaraları potansiyel spam arama olarak görüp kullanıcı yerine reddetme yetkisine sahip olacak. Şeffaflık sağlamak adına bu aramalar kullanıcının son aramalar sekmesinde “spam” olarak belirtilecek. Bu yeni API sayesinde, arama görüntüleme ve arayan kimliği işlevi sağlamak için kullanıcıdan READ_CALL_LOG izinleri alma gereksinimini ortadan kaldıracak.

Arka Planda Çalışan Uygulamalar

Google, arka planda çalışan uygulamaların Activity başlatması konusunda bir kısıtlama olduğunu da belirtmiş. Uygulamanız arka planda ise ve kullanıcının hızlı bir şekilde dikkatini çekmesi gerekiyorsa -örneğin gelen aramalar veya alarmlar gibi- burada yüksek öncelikli bir bildirim veya tam ekran bir intent başlatabileceğimizi vurgulamış. Detayları incelemek aşağıdaki linke göz atabilirsiniz:

Kullanıcı Doğrulama

Görsel : xda-developers.com

Android Q’da; kullanıcı, kimlik doğrulama işlemini biyometrik bir şekilde tamamladıktan sonra kullanıcı onayı gerektirmemesini söyleyen bir ipucu sağlayabileceğiz. Örneğin ; sisteme, bir kullanıcının yüz kimlik doğrulaması kullanılarak kimliği doğrulandıktan sonra başka bir onay gerekmediğini söyleyebileceğiz.

Varsayılan olarak Android sistemi, bir kullanıcı doğrulaması isteyecek şekilde tasarlanmıştır. Genellikle, kullanıcılar hassas veya yüksek riskli işlemleri onaylamak ister (Örneğin; bir satın alma işlemi). Ancak, uygulamanız için düşük riskli işlemleriniz varsa, setRequireConfirmation() yöntemine false değerini ileterek kullanıcı onayı gerektirmeden işlem yapabilirsiniz.

IMEI ve MAC Adresleri

Cihaz IMEI, seri numarası ve benzeri tanımlayıcılar dahil, sıfırlanamayan cihaz tanımlayıcılarına erişim sınırlanıyor. Android 9 Pie’da isteğe bağlı olan Wi-Fi adreslerinde MAC Adreslerinin rastgele seçilme özelliği Android Q’da varsayılan olarak ayarlanmış durumda. Yani Wi-Fi ağlarında sabit bir MAC Adresi olmayacak.

Wi-Fi Easy Connect

Android Q, deprecate olmuş WPS ile bağlantı kurma yerine Wi-Fi Easy Connect kullanacak. Uygulamalarımıza eklemek için; ACTION_PROCESS_WIFI_EASY_CONNECT_URI şeklinde bir intent kullanmamız gerekecek ve bu intent bir URI alacak. Bu URI sayesinde QR kod, sticker, görüntü, Bluetooth LE veya NFC ile Wi-Fi bağlantısı sağlamak mümkün olacak. Elbette, bu özelliği kullanabilmek için cihazın Easy Connect’i desteklemesi gerekiyor. WifiManager.isEasyConnectSupported() ile bunu kontrol edebileceğiz.

Katlanabilir Ekranlar

Tablet, telefon karışımı çok beğenmediğim bu tasarıma sahip cihazlar için onResume ve onPause’a multi-resume desteği eklenmiş. Ayrıca, uygulamaların katlanabilir ve geniş ekranlarda sorunsuz çalışması adına resizeableActivity manifest özelliği üzerinde de çalışmalar yapılmış. Son olarak, uygulamaların test edilmesi için gerekli Emulator çalışmaları devam ediyor.

Görsel : android-developers.googleblog.com

Paylaşma Kısayolları

Kullanıcı bir fotoğraf paylaşmak istediğinde bu işlemin oldukça hızlı olması istenilir. ShortcutInfo API’ın genişletilmesi ile elde edilen Sharing Shortcuts mekanizması, paylaşımların daha hızlı bir şekilde yapılabilmesine olanak sağlayacak. Bu mekanizma sayesinde uygulamada içerik paylaşılan activity’lerin açılış hızları geliştirilmiş olacak. Aslında benzer bir yapıyı Android 9 Pie’da görmüştük ancak paylaşma panelinde oluşan gecikmeler, bu gecikmeden kaynaklı yanlış tıklamalar, panelin yeniden oluşturulması gibi sorunlar kullanıcıları oldukça rahatsız etmişti. Android Q’da bunun oldukça yüksek hızda olması sebebiyle kullanıcılar bir gecikme yaşamayacak. Bu sebeple yanlış tıklama gibi sorunların da önüne geçilmiş olacak.

Görsel : Android Pie’da yaşanan sorun (androidpolice.com)

Dahili Ekran Kaydedicisi

Uzunca bir süredir Android kullanıcıları tarafından istenilen bir özellik olmasına rağmen bir türlü kullanıcı ile buluşamayan bu özellik sonunda Android Q ile birlikte kullanıcıya kavuşuyor. Dahili ekran kaydedicisi sayesinde ses ve ekran kaydı alınabilecek. Şu an etkinleştirmek için geliştirici seçeneklerini açmanız gerekiyor ancak gelen güncellemeler ile daha basit bir hale indirgeneceğini düşünmekteyim.

Ayarlar Paneli

Yeni Settings Panel API sayesinde, artık kullanıcı uygulama içerisindeyken bir ayar yapması gerektiğinde bunun için uygulamayı kapatıp ayarlar sekmesine gitmesine gerek yok!

Bunun yerine Android 9'da bizlere sunulan Slices yapısı ile birlikte, kullanıcı uygulamadan çıkmadan istediği ayarları yapabilmesine olanak sağlanmış olacak.

Örneğin, bir tarayıcı uygulaması içerisinde bağlantı ayarları bulunan bir Ayarlar Paneli’ni kullanıcıya sunabilecek, kullanıcı buradan Uçak Modu, Wi-Fi, Hücresel Veri gibi ayarları kolaylıkla yapabilecek. Dilerseniz Slices ile ilgili daha önceden paylaştığım şu blogposta göz atabilirsiniz:

Vulkan Heryerde!

Öncelikle benim gibi yeni duyanlar için kısa bir tanım yapalım.

Görsel : khronos.org/vulkan/

Vulkan ; OpenGL’e benzer şekilde, yüksek performanslı video oyunu ve interaktif medya gibi, gerçek zamanlı 3D grafik uygulamalara hedefleyen, düşük maliyetli, çapraz platform desteği olan ve Khronos Group tarafından Game Developers Conference 2015'de duyurulan 3D Grafik, işlem API’dır.

Google ise Vulkan’ın Android üzerindeki etkisini arttırma yolunda ilerliyor. 64 Bit üzeri, Android Q veya üstü işletim sistemine sahip cihazlarda Vulkan’ın bir gereklilik haline gelmesi için çalıştıklarını belirtiyorlar. Bu da bizlere, ileride uygulama ve oyunlar için daha yüksek performans sağlayan bir grafik API’na ulaşacağımızın habercisi oluyor.

ART Geliştirmesi

Android 4.4 KitKat ile Dalvik Sanal makinesi yanında ek bir seçenek olarak sunulan ART (Android Run Time) zaman içerisinde gelişti ve Android Q ile gelişmeye devam ediyor. Google Play, bulut tabanlı profiller sunarak uygulamaların kaynak kodunda herhangi bir değişikliğe gerek kalmadan daha hızlı açılmasını ve daha az bellek tüketmesini sağlayacak.

API Seviyeleri

Neredeyse her sene yeni bir Android sürümü çıktığından dolayı min API ve hedef API seviyelerinde değişikler oluyor. Google Play 2019 yılında markette bulunan uygulamaların;

  • Ağustos 2019: Hedef API Seviyesi 28 (Android 9) veya daha yüksek.
  • Kasım 2019: Mevcut uygulamalara gelen güncellemelerin API Seviyesi 28 (Android 9) veya daha yüksek.

Şeklinde olmasını istediğini de belirteyim. Bu kurallara uymayan uygulamaları açmak isteyen kullanıcıları aşağıdaki gibi bir ekran karşılayacak.

Görsel : https://www.androidauthority.com

Android Q..?

Henüz ismi belirli değil ancak isim olarak şunlardan birini görebiliriz :

  • Qurabiya
  • Queen of Puddings
  • Quince
  • Quaker Oats
  • Quality Street
  • Quik
  • Quiche

Umarım faydalı bir yazı olmuştur, vakit ayırıp okuduğunuz için teşekkür ederim. Görüşmek üzere! :)

--

--