Android Proje’si Oluşturma – Android Uygulama Çalışma Mantığı

İyi günler arkadaşlar bu yazımda size bir Android Projesinin nasıl oluşturulacağından ve nasıl çalıştığından bahsedeceğim. umarım faydalı olur.

Android projeleri iki kısımdan oluşmaktadır. Birincisi kullanıcının gördüğü kısım (İnterface) ikincisi ise kodlarımızın bulunduğu kısımdır.

Android projelerinde kullanıcı arayüzü (İnterfaceXML‘ ler kullanılarak oluşturulmaktadır. kod kısımlarında ise Java class’ları ve kodları kullanılmaktadır.

Android program geliştirme ortamı hazırlamak için

  • Android SDK (Software Development Kit)
  • JDK (Java Development Kit) ve Eclipse
  • Eclipse ADT (Android Development Tools) eklentilerinin bilgisayarımızda kurulu olması gerekmektedir. ( Bu kurulumlarda sorun yaşayan arkadaşlar yazıya yorum yazarsa yada benimle irtibata geçmeleri halinde yardımcı olabilirim.)

 

Projenin Oluşturulması :

Eclipse’i çalıştırıp File>New>Other seçeneğini tıklayalım. açılan pencerede Android Project ‘i seçelim ve Next diyelim

yeni açılan pencerede Project Name alanına Merhaba_Android yazalım, create new project in workspace alanı ve default location seçeneği seçili olsun. Next diyelim.

yeni pencerede kullanmak istediğimiz Android sürümünü seçelim “Android 2.3.3” sonra Next diyelim.

sıradaki pencerede Application Name ( Uygulama adı) kısımına Merhaba_Android yazalım,

Package Name kısımına com.merhaba.android yazalım

Create Activity onay kutusu seçiliyken karşısına Merhaba_Android yazalım ve Finish ‘e tıklayalım.

NOT : Eclipse projeyi derlerken zaman zaman gereksiz hatalar verebiliyor. beklenmedik bir hatayla karşılaştığınızda Project>Clean elemanını seçiniz ve Eclipse’in projeyi baştan derlemesini sağlayınız.

Merhaba_Android uygulamamızı seçip Run>Run menü elemanını seçelim açılan pencerede Android Application ‘i seçelim ve OK düğmesine tıklayalım. Android sanal cihazına uygulamamız yüklenip çalışacaktır.

 

Şimdi projemizi yakından inceleyelim :

Uygulamamız sadece bir ekrandan oluşuyor. Bu ekranı gösteren bir tane XML dosyamız (main.xml) ve bir tane java class‘ımız (Merhaba_Android) bulunuyor.

MerhabaAndroid.java dosyasını inceleyelim:

class’ımızın Activity class’ından miras (extends) almış olduğunu görüyoruz. Activity sınıfı Android yazılım bileşenlerinden en çok kullanılanıdır. Kullanıcıya görsellik sunan sınıftır. Her ekran için oluşturacağımız class’lar Activity Class’ından extends olmalıdır.

MerhabaAndroid class’ımızda sadece bir metod bulunmaktadır. “onCreate” bu metod Activity class’ında mevcut olan bir metod’tur biz bu metodu override (üzerine yazma, aşırı yükleme) ederek kullanıyoruz.

Bizim metodumuzun yaptığı tek şey gösterilecek olan ekranın yaratılması, bunun için “setContentView” metodunu kullanıyoruz. setContentView metoduna gönderilen “R.layout.main” degerinde gördüğünüz “R” sizi şaşırtmasın. “res” dizini altında oluşturduğumuz her eleman için “res” dizininin altındaki yapıya göre kendisi bir “R” sınıfı oluşturur.

bizde kodumuzda main.xml dosyasına ulaşmak için bu “R” sınıfını kullanıyoruz. “R.layout.main

 

şimdide main.xml dosyasını inceleyelim:

her XML‘in bir kök elemanı yani diğer tüm elemanları kapsayan bir elemanı olmalı ve mutlaka “http://schemas.android.com/apk/res/android” diye bir özelliği olmalıdır. LinearLayout‘ kendi içindeki elemanları alt alta yada yan yana ekranda görünmesini sağlar. Alt alta görünmesini istiyorsak “android:orientation” özelliğini “vertical” yapmalıyız. Eğer yan yana görünmesini istiyorsak “vertical” yerine “horizental” yazmalıyız.

android:layout_width ve android:layout_height özelliklerine gelirsek;

Ekranda gösterdiğimiz her nesnenin bir üst elemanı vardır. Bizim yaptığımız örnekte TextView nesnesinin üst elemanı LinearLayout‘tur.

android:layout_width özelliğini “fill_parent” yaparsak ilgili nesnenin genişliği üst elemanın genişliği ile aynı olacaktır. “wrap_context” yaparsak ilgili nesne ne kadarlık genişliğe ihtiyacı var ise genişliği o kadar olacaktır. Bu tanımlamalar android:layout_height içinde geçerlidir.

TextView ise herhangi bir metinin ekranda görüntülenmesini sağlıyor. Uygulamamızı çalıştırdığımızda karşımıza çıkan yazıları bu xml dosyasında göremedik. bu yazılar TextView‘de yazmalıydı diyenleri duyar gibiyim. evet burda yazıyor “android:text” karşısında yazan “@string/hello” yazısını silin ve yerine başka bir yazı yazın ne yazarsanız ekranda o yazı görünecektir. yani aslında bizim ekranda görünen yazımız bu sayfadan ekrana gönderilmiştir ama direk olarak değilde @string/hello değeri üzerinden başka bir dosyadan çekilerek gönderilmiştir. Bu kısımda yazıyı yazmak yerine “@string/hello” gibi bir değer tanımlanmasının nedeni bağımsız bir yapı kurmak bu sayede bu karakter dizinlerinin tanımlarının farklı bir dosyadan alınabilmesi sağlanmıştır. Şimdi bu tanımlanan karakter dizinlerinin bulunduğu “strings.xml” dosyasını inceleyelim:

Bizim ekranda gördüğümüz yazıların asıl kaynağı strings.xml dosyasıdır. “@string/hello” veya “string/app_name” yazarak istediğimiz yerden bu değerlere ulaşabiliriz. gördüğünüz gibi ekranda görünen yazılarımız burda “strings.xml” dosyasından bulunmaktadır.

Eğer ekranda görünen tüm karakter dizileri böyle tanımlanır ve kullanılırsa uygulamalarımızın farklı dilleri desteklemesi çok daha kolaylaşır.

 

faydalı olması dileğiyle…

                                                                                      CUMHUR ÇAĞATAY

About Cumhur Çağatay

Computer Engineer