Blog

Marshmallow’un en iyi özellikleri

Android işletim sisteminin en yeni sürümü olan Marshmallow’un en iyi özellikleri şöyle:

Bildiğiniz gibi mobil cihaz sektöründe çok büyük bir rekabet var. Bu rekabetin içindeki markalar, diğer bütün mobil cihazlardan ziyade akıllı telefonların büyüyen piyasasında lider olmak istiyorlar. Şu an dünya üzerinde en çok kullanılan telefon markası, yani akıllı telefon piyasasının lideri Samsung. Samsung’u çokta geride olmayan Apple izliyor.

Samsung, Sony, LG gibi teknoloji devleri, telefonlarında Android işletim sistemi kullanıyor. Apple ise sadece iPhone’a özel olarak üretilmiş iOS işletim sistemini kullanıyor. Bu nedenle markalar arasında olduğu kadar işletim sistemleri arasında da büyük bir rekabet var. Geçtiğimiz günlerde iOS’un yeni sürümü olan iOS 9, yayınlanmasıyla birlikte kullanıcılarına hata yaşatmıştı. Android’in bugün Nexus cihazlarına gelmesiyle resmi çıkışını yapan Marshmallow, nam-ı diğer Android 6.0, Apple’ın bu hatasını bir kazanca çevirmek peşinde. Son günlerde kendinden oldukça çok söz ettiren Marshmallow’un en iyi özelliklerini sizler için derledik. Bakalım bu yeni sürüm bizlere ne gibi hoş yenilikler getirecek.

Google Now’ın yeni özelliği, başka bir uygulama sırasında kullanılabiliyor olması. Örneğin bir arkadaşınızla mesajlaşıyorsunuz ve size bir film isminden bahsetti. Telefonunuzun “home” tuşuna basılı tutuyorsunuz ve Google Now ekranı otomatik olarak tarıyor. Ekranda bulunun kelimelerin aramasını Google’da gerçekleştiriyor ve filmi bulduğu an IMDB gibi bir siteden açmak için sizden izin istiyor. Bunun gibi hızlıca arama seçeneklerine sahip olan Google Now size o sırada aramak istediğiniz ne varsa leb demeden leblebiyi anlayarak “Buyur abi, merak ettiklerini topladım bak bakalım neymiş” dercesine bize sunacak. Aferin Google Now.

Parmak İzi Okuyucu Sensörü ile Çalışan Uygulamalar
Parmak izi okuyucusu bulunan telefonlar veya uygulamalar yeni çıkmış değil, fakat Android Marshmallow, güvenliği ve gizliliği sağlamak adına bu özelliği şimdiye kadar kullanılandan çok daha fazla kullanmayı hedefliyor. Yani daha iyi bir güvenlik ile gelen Android 6.0’da parmak izi desteği de artacak ve eğer cihazınızda parmak izi okuyucusu varsa daha güvenli bir telefona sahip olmuş olacaksınız.

USB Type-C
Android Marshmallow işletim sistemine sahip olan telefonlar USB-C girişine sahip olacaklar. Bu USB türünün daha dayanıklı ve daha kolay kullanılabilir olduğu belirtiliyor. Sonunda şarj aletleri ters takılmak için zorlanmayacak. Ama yeri gelmişken hemen “Apple yaptı” diye atlayacak olanlara belirtelim. USB-C’nin Apple ile alakası yok, sadece bangır bangır bağırarak ilk kullanan firma oldu. Ama tam zamanında kullandı ki artık neredeyse her cihazda görebiliriz. Tabii yeni çıkacaklarda.

Doze
Bu uygulama Google tarafından Android Marshmallow’a özel olarak geliştirildi ve her cihazda bulunacak. Cihazların pil ömrünü uzatmaya ve kullanılmayan uygulamaların kapatılmasına yarayan Doze, sizin için sizin şarj seviyenizi düşünecek. Nasıl mı?

Şimdi diyelim ki gece bir telefonu şarja takmadan uyuyup kalmışsınız. Sonuç? Sabah büyük ihtimalle kapalı bir telefon oluyor. İşte Android 6.0 ile gelen Doze özelliği ile telefon pasif konumda ise yani uzun süre elinizi sürmemiş iseniz telefon kendi kendine pil tasarrufu moduna geçiyor ve şarjınızın bitmesini engelliyor. Yani %60 şarjda uyumuşsanız sabah kalktığınızda %50lerden fazla bir şarj durumu ile uyanacak ve üzülmeyeceksiniz.

Daha İyi “Kopyala, Kes, Yapıştır” Özellikleri
Android kullanıcıları olarak ekranın kenarında kalan bir kelimeyi kopyalamanın ne kadar zor olduğunu hepimiz biliriz. Android Marshmallow, bu işlevi çok daha kolay halde getirecek birkaç güncellemeyle geliyor. Yani siz bir kelimeyi seçtiğinizde taa yukarıdan kopyalayı aramak yerine seçtiğiniz kelimenin hemen üzerinde çıkacak olan Kes, Kopaya, Yapıştır seçenekleri ile kolayca yazım hataları düzeltmeleri yapabileceksiniz. Ayrıca sanki seçim kısmı da daha kolay gibi, daha önceleri kelime seçmek de biraz zor gibi geliyordu bize.

Chrome Diğer Uygulamalar Açıkken Çalışabiliyor
Google yeni işletim sisteminde, “Chrome Custom Tabs” adlı bir özellikle yüklenmesini beklediğiniz verileri içeren internet sayfalarının kapanmasını engelleyecek ve siz başka uygulamada olsanız da Chrome uygulması izniniz olmadan kapanmayacak. Böylelikle gereksiz veri kullanımı ve hali hazırda kısıtlı olan kotanıza da zeval gelmeyecek. Mis gibi.

Nihayet Uygulama İzin Kontrolü!
İşte Android 6.0’ın belki de en cici özelliği bu. Çünkü Android camiasında örneğin bir oyunun kamera izni istemesi biraz garip kaçabilir. Hele ki kamera ile işi yoksa bi istemsiz “Nabacak la bu benim kamerayı” diye bi sorabilirsiniz. Android 6.0’da bu sorunlar olmaması için uygulamayı ilk yüklediğinizden sonra yapacağınız işlemler için erişim izni isteyecek. Örneğin Twitter’da fotoğraf paylaşmak isterseniz o sırasa size çıkacak bir pop up ile sizin fotoğraflarınıza erişmek için izin isteyecek. Daha sonra ise Uygulama Ayarları kısımından uygulamalarınızın hangi izileri alıp alamayacağına siz karar verebileceksiniz.


Material Design Nedir?

İlk olarak Google I/O 2014’te tanıtılan yenilikçi bir tasarım yaklaşımı ile tüm ürünlerinde tek bir tasarım dilini oturtmak isteyen Google tüm uygulamalarını nu yeni material design tarzına geçirmiş durumda. Material Design, Android’in alıştığımız görüntüsünden büyük bir ayrılışı gösteriyor. Origamiden ilham alan düzen, Microsoft’un Metro temasının daha pastel ve kağıtlaşmış halini andırıyor. Yeni tasarımın çözmek istediği sorunlardan biri, uygulamalar arasında tutarlı bir düzen sunmak amacında. Material Design, Google’ın sözleriyle “bir durumdan diğerine sorunsuz olarak geçmek üzere bir iskelet sunuyor”. Böylece hem arayüz içerisinde daha hızlı dolaşabiliyor, hem de bir öğeye dokunduğunuzda ne olacağını kestirebiliyorsunuz. Material Design, Google’ın tüm mobil uygulamalar, web siteleri ve ürünlerde kullanılması gerekliliğini, bilinen tasarım değerleri ile bilimsel çalışmaları bir araya getiren bir tasarım anlayışı.

Material Design temel olarak iki temel unsur üzerine inşa edilmiştir dersek sanırım çok fazla yanılmamış oluruz. Bunlar Material ve Motion olarak adlandırılabilir.

Material

Material tasarım içerisinde içeriği bizlere sunmaktadır. Tasarımı yapılmış olan arayüz ve yüzey bize içerikle ile ilgili ipucu sağlamaktadır. Gerçek hayatta bir oda içerisinde girdiğimizde, duvarları gördüğümüz için odanın boyutu ile ilgili bilgi sahibi oluruz. Aynı zamanda odanın iç özellikleri ise bize odanın kendisi ile ilgili bilgiler sunar. Örneğin, evimizin mutfağı, banyosundan farklı gözükmektedir. Benzer bir durum Material Design anlayışı içinde geçerlidir. Tasarım ve içeriğin bir araya gelmesiyle birlikte kullanıcıya dijital bir dünya içerisinde anlamlı bir sonuç sunmaktadır. Burada kullanıcı ona arayüz hakkında daha içerik sunulduğu için , arayüz hakkında daha fazla bir bilgiye sahip olacaktır.

Tasarımda kullanılan bir card, bizlere anlamlı bir içerik sunmaktadır. Aynı zamanda bu kullanım Material Design içerisinde genel bir kullanım olarak değerlendirilebilir. Bir card kendi içerisinde doğrudan context sahibi olmasının yanında diğer card’ lar ile de ilişki içerisindedir.

Motion

Material Design anlayışı çerçevesinde düşünüldüğünde Motion kavramı da benzer bir senaryoya sahiptir. Motion, uygulama akışı boyunca kullanıya bir içerik üretmektedir. Özellike bu durum ürün sürekliliği söz konusu olursa ciddi mana da önem arz etmektedir. Şimdi bu senaryo nasıl çalışmaktadır onu anlamaya çalışalım.

Şimdi önünüzde bir dizi karttan oluşan bir içerik olduğunu düşünün. Mesela, home feed olarak isimlendirilebilecek bir yapı olabilir. Siz bu kartlardan herhangi birisinde tıkladığınız durumda, Material Card sadece tek bir kart olarak devamında yer oluşan içeriği kullanıcıya sunmak yerine tam ekran olarak sunmaktadır. Bu durumun kullanıcıya sunduğu en önemli durum ise, kullanıcı davranışına karşı verilen yanıtın tutarlı olmasıdır.

Daha fazlası…

Material kavramını biraz daha inceleyelim. Aslında material design statik tasarım elementlerinizin bir birleşiminden oluşuyor. Şekiller, renk, yazı fontları ve diğer tasarım olarak kullandığınız diğer araçlar.

Renk
Renk seçimi hem tasarımcılar hemde kullanıcılar açısından çok önemli. Piskolojik olarak kullanıcıları etkilediği biliniyor. Renk, tasarımı daha güven verici, ilgi çekici hale getirebikiyor. Material Design içinde birçok renk paletine sahibiz.

material_design_renkler

 

Devam edeceğiz…

 

Kaynaklar

http://code.tutsplus.com/articles/what-you-can-learn-from-googles-material-design–cms-22516
https://www.google.com/design/spec/material-design/introduction.html
http://developer.android.com/design/material/index.html


http://www.youtube.com/embed/yhv8l9F44qo

Android Volley Kullanımı

Volley, Android uygulamalarında network işlemlerinin yapımında kullanılmak üzere geliştirilen, bu işlemlerin yapılmasını kolaylaştıran ve daha da önemlisi hızlandıran bir kütüphanedir. Temel olarak bir network kütüphanesi olan Volley, kendisine gösterilen URL adresine bağlanıyor ve oradan sağlanan verileri size sunuyor. Default olarak Volley, bu işlemleri asenkron olarak gerçekleştirmektedir. Bundan dolayı bu tür işlemler için Asynctask yapılarını kullanma gibi dertlerimiz olmayacak.
Volley kütüphanesinin bizlere sunduğu avantajlar genel olarak aşağıda sıralanmıştır.

Network işlemlerinde otomatik zamanlama
Çoklu eşzamanlı olarak gerçekleşebilen network işlemleri
HTTP üzerinden resim indirmenize imkan tanır. İndirdiğiniz resimleri bellekte ya da disk üzerinde cache’ yebilirsiniz. Resimleriniz inerken, ImageView içerisinde otomatik olarak bir “loading” simgesi gösterebilirsiniz ve aynı zamanda hata durumları için görsel ayarlayabilirsiniz.
İstekleri kuyruk yapısında tutar ve eğer isteğin cevabına artık ihtiyaç kalmadıysa otomatik olarak isteği iptal eder.
Istekler arasında önceliklendirme yapmanıza olanak tanır.
En önemli özelliklerinden birisi de request’leri kolaylıkla iptal edebilirsiniz.
Volley kütüphanesini edinmek

Öncelikle Volley.jar’ı nasıl elde edebileceğinize bakalım. Ne yazık ki Volleykütüphanesini kendinizin indirip JAR’laması gerekmektedir. Ben bu yazıda bu işlemlerin nasıl gerçekleştirildiğinden bahsetmek istemiyorum. Gerekli bilgileri Google hazırlamış olduğu sayfadan edinebilirsiniz

İnternet iznini almayı unutmayın!

Volley kütüphanesini kullanabilmeniz amacıyla, uygulamanızın manifest dosyasına android.permission.INTERNET iznini eklemeniz gerekmektedir. Bu izin olmadan geliştirdiğiniz uygulama ağ bağlantısı kuramayacaktır.

Volley Singleton sınıfı oluşturalım.

Eğer uygulamanız sürekli olarak network işlemleri geliştirecekse, uygulamanın hayat döngüsü boyunca kullanılacak olan RequestQueue nesnesinin tek bir örneğini kullanmak en etkili yol gibi görünmekte. Bu işlemi bir kaç alternatif yöntem ile gerçekleştirebilirsiniz. Önerilen yaklaşım ise, RequestQueue ve diğerVolley fonksiyonel özelliklerini barındıran singleton sınıf yapısının kullanılmasıdır.

Bu yapının kullanımı ise şu şekilde örneklenebilir.

Bu yazının içerisinde kullanılan örnek kodlar Google ‘ ın hazırlamış olduğu örnek sayfadan sadece bir tanıtım ve fikir vermesi amacıyla alınmıştır. Geliştirmek istediğiniz uygulamalara göre bu sınıfın içerisini düzenleyebilirsiniz.