Android Programlama - Temeller - 1

Bir önceki yazımızda Android Uygulama Geliştirmek için yapılması gereken temel adımlardan bahsetmiştik. Özetlersek dersten önce öğrenilmesi gereken temel bilgilerdi. Yazıya erişmek için ilgili linki kullanabilirsiniz.

Bildiğiniz üzere Android işletim sistemi Linux bazlı çalışan açık kaynak kodlu bir işletim sistemidir. Yapılış amacı telefonlar ve tabletlerde kullanmaktır. Zaman içerisinde Televizyonlar ve giyilebilir teknolojilerde de kullanımı görülmüştür.

Android uygulama geliÅŸtirme sürecine dahil olan geliÅŸtiricilerin karşılarında oldukça büyük bir telefon havuzu olduÄŸunu ve geliÅŸtirmelerini yaparken bu telefonları da dikkate alarak çalışmalarını yapmalarına dikkat etmek gerekecektir. Ä°yi yanı ise hazırladığınız uygulama cep telefonu eko sisteminin yaklaşık %80 ‘nini elinde bulunduran bir iÅŸletim sisteminin uygulama havuzuna eklenecek olmasıdır.

Android Uygulama GeliÅŸtirme aracı ilk olarak beta sürümü ile 2007 yılında karşımıza çıkmıştı. Ä°lk resmi sürümü ile Android 1.0 ile Eylül.2008 ‘de bizler ile buluÅŸtu.

2012 yılında Google I/O konferasında Jelly Bean kod adlı Android 4.1 sürümü duyruldu. Android işletim sistemi gerçek anlamda verimli olarak kullanıcı arayüzünü etkili kullanmaya başlamıştı. Bu sürümde fonksiyon ve performans açısından da çok büyük yenilikler yapılmıştı.

Android ‘in kaynak kodları ücretsizdir ve açık kaynak kod lisansı (open source software licences) ile korunmaktadır. Bu lisanslar içerisinde Google en çok Apache Licence 2.0, Linux çekirdek deÄŸiÅŸiklikleri ve genel kullanım lisansında güncelleme yapmaktadır.

Neden Android

Bu soruyu çok güzel açıklayan bir çizimi internette buldum.

Özetlersek,

  • Açık kaynak kodlu, merak edersek açıp kodlarına bakabiliyoruz. :)
  • Çok fazla geliÅŸtirici ve topluluk var. Kaynak bulması kolay.
  • Pazarlaması oldukça iyi, kendi kendine reklam yapabiliyor.
  • Uygulamalar arası etkileÅŸimi baÅŸarılı.
  • GeliÅŸtirme maaliyeti düşük ve öğrenim gereksinimi oldukça düşük. (Herhangi bir programlama dili biliyorsanız)
  • BaÅŸarı örnekleri çoook fazla (milyon dolar zenginlerinden olmasa da bin dolar zengini olmanız mümkün)
  • Güçlü bir geliÅŸtirme arayüzü sunuyor

Android ‘in Göze Batan Özellikleri

Android iÅŸletim sistemi gerçek anlamda Apple iPhone 4S çıktığı zamanlardan bu yana tam anlamıyla gücünü göstermeye baÅŸlamıştır. iOS ‘un uzunca bir süredir Android tabanlı telefonlarda kullanılan ve çok beÄŸenilen özellikleri kendi iÅŸletim sistemine dahil ettiÄŸini düşünürsek bu fikrin doÄŸruluÄŸu da ispatlanmış oluyor.

Özellikleri ve temel açıklamaları alt kısımdaki özellik listesinden erişebilirsiniz. Özelliğin adını internette kaynak ya da örnek ararken daha kolay bulabilmeniz için ingilizcesi ile bırakacağım.

Beautiful UI (Şık kullanıcı ara yüzü):
Android işletim sistemin en baz sürümü bile son kullanıcıların ilgili çeken bir görünüme sahiptir.

Connectivity (EriÅŸim/ Ä°letiÅŸim):
GSM/EDGE, IDEN, CDMA, EV-DO, UMTS, Bluetooth, Wi-Fi, LTE, NFC ve WiMAX.

Storage (Depolama/ Veri depolama):
SQL Lite ile ufak çapma ilişkisel veri tabanı oluşturup kullanmak mümkün oluyor. En güzel tarafı ile son kullanıcının telefonunun veri tabanı kullanıldığı için uygulama kullanıldığı sürece yapılan işlemleri tutup, tekrardan uygulama kullandığında daha iyi bir deneyim sağlamaya olanak sağlıyor.

Ayrıca bir konuyu da unutmamak lazım ki, büyük çapta bir uygulama hazırladığınızda bütün işlemleri SQL Lite üzerinde yapmayıp bir web servis yapısı ile ayrı bir sunucu grubunda tutmanız daha yararlı olacaktır. Ayrıca hazırladığınız servis mimari hem Android hem de iOS cihazlarında kullanılması mümkün olacaktır. Gelecek yazılarımız da nasıl yapacağımıza değineceğim.

Media Support (Ses/Video format DesteÄŸi):
Bilirsiniz eskiden bir medya dosyası elimize ulaÅŸtığında acaba codec ‘i var mı? Ses ya da görüntü gelecek mi diye düşüncelerimiz olurdu. Android bu derdi bir çok codec dosyasını sisteminde barındırarak çözmeye çalışmış.

H.263, H.264, MPEG-4 SP, AMR, AMR-WB, AAC, HE-AAC, AAC 5.1, MP3, MIDI, Ogg Vorbis, WAV, JPEG, PNG, GIF, ve BMP

Messaging (MesajlaÅŸma):
GSM operatörlerinin sunduğu SMS ve MMS mesajlaşma tiplerini desteklemektedir. Whatsapp gibi uygulamalar internet üzerinden haberleşmeyi sağladığı için bu kategori içerisinde yer almamaktadır.

Web Browser (İnternet Tarayıcıs):
Google adı geçtiğinde aklımıza ilk olarak arama motoru geliyorsa ikinci olarak Chrome internet tarayıcısı geliyor. Mobil işletim sisteminde de bu teknolojisinin gücünden yararlanmayı tercih etmişler. Açık kaynak WebKit mimarisini temel olarak Java script mimari yapısı ile birlikte HTML5 ve CSS3 desteği vermektedir.

Multi-touch (Çoklu dokunuş):
Artık hepimizin alışık olduğu tek ve birden fazla dokunuş ile etkileşim alabilmek olanağı.

Resizable Widgets (Boyutları değiştirilebilir araçlar):
iOS işletim sisteminden farklı olarak Android işletim sisteminden mevcut ekranlarınızın herhangi bir yerine widget ekleyebilir ve boyutlarını tercihinize göre belirleyebilirsiniz.

Multi - Language (Çoklu dil desteği):
Türkçe desteği de dahil olmak üzere bir çok dil desteği vardır.

GCM:
Google Cloud Messaging (GCM) servisi, uygulama geliştiricilere cihazlar arasında internet üzerinden kısa mesajlar göndermesine oanak sağlar.

Wi-Fi - Direct (Kablosuz AÄŸ):
Kablosuz internet desteği vardır.

Android Uygulamaları

Android için hazrlanan uygulamalar Java dili ve Android Yazılım Geliştirme aracı (SDK) (Android Software Development Kit) yardımıyla yazılır.

Hazırladığımız uygulamaları son kullanıcı ile buluşturmak/ indirtmek/ satmak istediğimiz işletim sistemine ait birkaç market göze çarpmaktadır. En popüleri herkesinde bildiği gibi Google Play dir. Diğer uygulama havuzları ise, SlideME, Opera Mobile Storage, Mobango, F-droid ve Amazon AppStore olarak sıralayabiliriz.

Android işletim sistemine ait yüz milyonlarca telefon olduğunu, bu telefonların ise yaklaşık 190 ülkede kullanılığını düşünürsek doğru fikir ile hazırlanan uygulamanın fark edilmesi çokta zor gözükmemektedir.

Uygulamayı geliştirip yayınlamak istediğimiz Android uygulama paketinin oluşacağını ve bu sayede uygulamalarımızın çalışacağını unutmamamız gerekiyor.

Android Uygulama Kategorileri

Hazırlanan/ geliştirilen uygulamalar Andorid marketlerde belirli kategoriler altında bulunur. Bunlara alt kısımdaki görselden erişebilirsiniz. Sizlerde geliştirdiğiniz uygulamayı bu kategorilerden birinin altına eklemeniz gerekecektir.

Android Geçmişi

Geliştirmelerden bildiğimiz üzere Android işletim sistemlerinin oldukça dikkat çekici kod adları oluyor. Bunları listelersek; Cupcake, Donut, Eclair, Froyo, Gingerbread, Honeycomp, Ice Cream Sandwitch, Jelly Bean, Kitkat, Lolliop olarak sıralanmaktadır.

Bir de bu iştah açıcı kod adlarına istinaden bulunan görsellere göz atalım.

API Level Nedir?

Android sürümlerine verilerin kod adları, platform numaraları ile birlikte bir API Level numarası göze çarpacaktır. Framework sürümleri arttıkça aslında API Level Artışı olmaktadır. Ä°lk sürümden itibaren api level ‘a alt kısımdaki listeden ulaÅŸabilirsiniz.

Platform Sürümü API Level VERSION_CODE
Android 5.1 22 LOLLIPOP_MR1
Android 5.0 21 LOLLIPOP
Android 4.4W 20 KITKAT_WATCH KitKat ile Giyilebilir Teknoloji DesteÄŸi geldi
Android 4.4 19 KITKAT
Android 4.3 18 JELLY_BEAN_MR2
Android 4.2, 4.2.2 17 JELLY_BEAN_MR1
Android 4.1, 4.1.1 16 JELLY_BEAN
Android 4.0.3, 4.0.4 15 ICE_CREAM_SANDWICH_MR1
Android 4.0, 4.0.1, 4.0.2 14 ICE_CREAM_SANDWICH
Android 3.2 13 HONEYCOMB_MR2
Android 3.1.x 12 HONEYCOMB_MR1
Android 3.0.x 11 HONEYCOMB

Android 2.3.4

Android 2.3.3

10 GINGERBREAD_MR1

Android 2.3.2

Android 2.3.1

Android 2.3

9 GINGERBREAD
Android 2.2.x 8 FROYO
Android 2.1.x 7 ECLAIR_MR1
Android 2.0.1 6 ECLAIR_0_1
Android 2.0 5 ECLAIR
Android 1.6 4 DONUT
Android 1.5 3 CUPCAKE
Android 1.1 2 BASE_1_1
Android 1.0 1 BASE


Bir sonraki yazımızda (Geliştirme araçlarının kurulumu) görüşmek üzere...

Turhal Temizer

Yorum Gönder

0 Yorumlar

Ad Code

Responsive Advertisement