Android ile Uygulama Geliştirmeye Giriş 1

Değerli Arkadaşlar,

Android işletim sisteminin popülerliği bütün dünyayı sardı, gün günden de katlanarak artmaktadır. Öncelikle belirtmekte fayda var; Android ilk defa 2008’in sonlarına doğru piyasaya çıkarılan bir Linux sürümüdür. Ana sponsor Google olup, açık kaynaklı yazılım olduğu için tüm dünyadan insanların çeşitli alanlarda desteğini alarak gelişmiş ve gelişmeye devam eden bir işletim sistemidir. Android, iOS ile akrabadır. Çünkü, iOS, UNIX türevi olan BSD işletim sistemi üzerine inşa edilmiştir. Android de bir başka UNIX türevi olan Linux üzerine inşa edilmiştir. iOS, Android’den farklı olarak, kapalı kaynak kodlu olduğu için sadece Apple firması tarafından yürütülmektedir, dünya bilişimcilerine kapıları kapalıdır.

Android işletim sistemli telefon, tablet ve çeşitli bilgisayarlara uygulama geliştirmek istersek Java ve XML bilmemiz çoğu zaman yeterlidir. Şimdi, birlikte, bir Android uygulamasına nasıl başlanır, projeyi yaratırken, hangi kısım ne ifade eder ona bakalım.

IlkAndroid adlı ilk uygulamamızı yazalım:

 

Burada, paket adının tamamının küçük harflerle olma sebebi, Sun şirketi tarafından koyulmuş bir Java standardı olmasıdır, yoksa bir zorunluluk değildir. En düşük (minimum required) SDK-yı neye göre seçeriz? Bu SDK seviyesi ne kadar düşük olursa, o kadar geniş bir kitleye hitap etmiş oluruz, çünkü bu, uygulamamızın çalışabilmesi için talep edilen en düşük Android versiyonudur. Öte yandan, bunu düşük tutmak, bizi işletim sisteminin sunduğu bazı yeniliklerden mahrum bırakır. Yani bazı işlevler eski versiyonlarda olmadığından onlardan yararlanamayacağız. Yine de uygulamayı eski versiyonlar için de çalışabilir durumda tutup da belli başlı işlevleri kullanmak istiyorsak, kod içerisinde işletim sistemi versiyonunu alıp, versiyona göre hamle yapmak bazen mümkündür. Aşağıda işletim sistemi versiyonuna göre API seviyeleri tablosu yer almaktadır.

Devam edecek olursak; oluşan projede src klasörü altında Java dosyaları, res klasörü altında ise XML dosyaları tutulur. Bir de otomatik oluşan Ana aktivite (MainActivity) sınıfı Activity sınıfından türemektedir. Her bir pencere bir aktiviteye karşılık gelir. Aktiviteden farklı olarak Fragmanlardan (Fragment) daha başka bir yazıda değinebiliriz.

Aktivitelerle ilgili en önemli ögelerden biri şudur: Mutlaka her aktivite, AndroidManifest adlı XML dosyasında tanımlanmalıdır.

Aktivitelerimizi oluşturuken onCreate metodu içinde setContentView metodunu çağırarak bir XML dosyası olan layoutlarımızdan birini göndeririz. Layoutlar, uygulamadaki bütün bileşenleri içeren her tür görselliği barındıran yerdir. Buradan da yola çıkarak diyebiliriz ki, XML içinde bileşenleri (component) ve estetik tercihlerimizi belirleriz ve Java içerisinde de bunlara müdahale ederiz ve bunları kullanırız. XML görselliğin, Java da veri manipülasyonun yapıldığı yerlerdir kaba ifadeyle.

Oluşan projede karşımıza en basit haliyle şu dosyalar çıkmaktadır.

Projeyi çalıştırıp görüntülemek için gereken emülatörü (simülatör) yaratalım:

Emülatöre istediğimiz adı veririz, cihazın boyutunu belirleriz, API seviyesini belirleriz. RAM miktarı çoğu zaman 512 tercih edilir, çünkü büyük RAM seçimi çoğu durumda emülatörün çalışmamasına sebebiyet verir. Bilgisayarınızın GPU-sunu kullanmasını seçersek, daha temiz bir görüntü alırız ve uygulama emülatörde daha hızlı çalışır.

Bu şekilde projeyi çalıştırdığımızda ekran görüntüsü aşağıdaki gibidir:

Eğer yazıyı değiştirmek istersek /res/values/strings.xml dosyasında ilgili alanı değiştirmemiz yeterlidir. Örneğin;

Eğer bir bileşene Java-dan erişmek istersek o bileşene bir id atamalıyız XML içerisinde. Örneğin;

Java içinden müdahale için bileşeni önce çağırıp, sonra metodlarını kullanabiliriz. Örneğin;