Android İle İlk Program
Konusu 'Android' forumundadır ve kosasker tarafından 8 Ekim 2010 başlatılmıştır.
2010-10-08 12:09:03 - Android İle İlk Program
Merhaba arkadaşlar. 07.10.2010 tarihinde yazmış olduğum Google Android SDK (SDK-Yazılım Geliştirme Kiti) Kurulumu ve Eclipse adlı yazıdan sonra şimdi de ilk programımıza geçelim. Eğer android sdk kurulumunda sorun yaşadı iseniz yine Google Android SDK (SDK-Yazılım Geliştirme Kiti) Kurulumu ve Eclipse konusunun devamından yardım isteyebilirsiniz.
Öncelikle Android SDK'nın çalışma mantığı hakkında size bilgi vermek istiyorum. Android SDK büyük bölümü java ile yazılmış bir uygulama geliştirme aracı. Android SDK bize üzerinde çalışabilmemiz için sanal bir veya birden fazla cihaz (evet sanal telefon) ve kendi yazılım kütüphane dosyalarını sunuyor. Bu da şu demek; bu yazdığımız kodları denemek için illa ki android yüklü bir cep telefonu, PDA ya da herhangi bir elektronik cihaza ihtiyacınız yok. Uygulama ortamı içerisinde çalışma zamanında dahi bu sanal cihazı oluşturup istediğiniz özellikleri vermeniz mümkün. Android SDK nın içerisinde de ayrıca ingilizce olarak yazılmış dökümanlar var. Bunlardan rahatlıkla yararlanabilirsiniz. Ayrıca yazılım kütüphanelerinin ne işe yaradığını, neler yapabildiğini, sınırlarının ne olduğunu anlatan "referans dökümanı" da bu dökümanlar içerisinde mevcut. Tek bilmeniz gereken biraz ingilizce. Eğer ingilizce ile alakalı sorun yaşıyorsanız "google translate" hizmetinden ve internette yayında olan sözlüklerden yararlanın. Bu kısa bilgilerden sonra şimdi örneğimize geçelim isterseniz.
Yapacağımız program, android sanal cihazımız içerisine istediğimiz cümleyi yazmamızı sağlayacak. Yapacağı iş tam olarak bu. Lafı daha fazla uzatmadan anlatmaya ve kod yazmaya başlayalım. Öncelikle Eclipse yazılımını açıyoruz. Eclipse açıldığında direkt olarak " CTRL + N " tuşlarına da basarak yeni bir proje açmak için gerekli formu çağırabilirsiniz. Fare ile seçmek için aşağıda gösterildiği gibi "File\New\Other" seçeneklerini izleyin Karşımıza gelen formdan "Android Project" seçeneğini seçiyoruz ve "Next" butonuna basıyoruz.
Gelen diğer ekranda bizden proje adı, uygulama eklenti arayüzü (API), uygulama adı, paket ismi (aşağıda açıklayacağım), etkinlik adı ve desteklenecek minimum SDK versiyonu seçmemiz isteniyor. Öncelikle bunları açıklayalım.
Project Name: Projemiz için gireceğimiz isimdir. Burada verdiğimiz ad doğrultusunda Eclipse, aynı adda klasör açar ve projede kullanacağımız dosyaları standart olarak bu klasör içerisinde biriktirir. Burada vereceğiniz ad bitişik olmalıdır. Birden fazla kelime kullanımı için alt çizgi kullanabilirsiniz.
Build Target: Yaptığımız uygulamanın çalışacağı Android sürümünü belirtir. İnternette araştırdığım kadarı ile şu an piyasada bulunan en alt Android işletim sistemi sürümü 1.6, o yüzden yine de ne olur ne olmaz 1.5 ile çalışmanızı tavsiye ediyorum.
Android' in bir güzelliği de işletim sistemi yeni olsa dahi, eski yapılan uygulamaları desteklemesi. O yüzden 1.5 sürümüne yönelik yapacağınız uygulama, eğer çalışması için 1.5' e bağımlı bir yazılım veya eklenti kullanmıyorsa, yani standartlara uygun yazılmışsa çok çok büyük bir ihtimalle en yeni sürümlerde de çalışmaya devam edecektir.
Application Name: Android uygulamamızın adıdır. Proje adı ile farkı bulunmaktadır. "Application Name" kısmında istediğiniz herhangi bir adı yazabilirsiniz. Bu yazacağınız ad, projenin "MANIFEST" (içerik) dosyasına yazılacaktır ve derlenmiş uygulamanızın adını belirtir. Yapacağınız uygulamaları derlediğinizde, derlenmiş dosya adı ve android üzerinde görünecek form başlığı buradan gelmektedir. Az sonra yazacağımız örnekte de bunu göreceksiniz Package Name: Burası gerçekten önemli. "Package Name" aynen Java' da belirtilen "package" ya da C# da kullanılan "namespace" belirtiminin aynısını uygulamak için kullanılır. "Package name" yazacağımız sınıf (class) nesnelerinin ait olacağı üst bağı belirtir. Bir proje için birden fazla alt proje açmamız veya birden fazla ayrı dosya açmamız gerekir. "package" belirtimi ortak isimle yapılmış dosyaların içerisine yazılmış nesnelerin ancak birbirine erişimi olabilir, farklı isimlileri ise import ederek kullanabiliriz.
Create Activity: Burada projede kullanacağımız sınıfı belirtiyoruz. İsterseniz yanındaki onay kutusunu kaldırarak boş geçebilirsiniz. Ben bu örneğimde proje ile aynı ismi vererek kullandım. Burada yazılan isim bize hazır bir sınıf nesnesi (class) oluşturacağı için Java yazım kurallarına uygun olarak yazmanız gerekmektedir. Kelimelerin Ilk Harfleri Büyük Olmalı, turkce karakter kullanmamali ve Birden_Fazla_Kelime_Kullanmak_Isterseniz_Araya_Karakter_Olarak_Sadece_Alt_Cizgi_Koyabilirsiniz.
"Min SDK Version:" Uygulamamızı derlediğimizde çalıştıracağımız minimum android SDK versiyonunu burada belirtiyoruz. Şu an ki sürümümüz 3 serisinden olduğu için buraya rakamla "3" yazıyorum.
Yazılan tüm değerler şunlar:
Bu değerleri girdikten sonra "Finish" butonuna basıyorum ve proje dosyası içerisinden MerhabaAndroid.java dosyasına çift tıkladığımda aşağıdaki görüntü karşıma geliyor Umarım buraya kadar bir sorun yaşamadınız. Evet artık elimizde bir proje dosyası olduğuna göre içerisinde istediğimiz değişiklikleri yapalım ve çalışan küçük programımızı yapalım.
Sanal cihazımızın ekranına bir yazı yazdıracağız ve bu yazıyı taşıması için bir nesnemiz var. Adı TextView. "import" belirtimini kullanarak MerhabaAndroid.java dosyamıza bu nesneyi ekleyelim.
Projeyi oluşturma aşamasında "Create Activity" seçeneğinin bizim için bir sınıf nesnesi oluşturacağını söylemiştik ve oraya MerhabaAndroid yazmıştık. Bu sınıfın oluşturulmuş olduğunu görüyoruz. Hazır oluşturulmuş kodlar içerisinde bulunan
kodunu siliyoruz ve yerine "TextView" nesnesini kullanmak için gerekli kodlarımızı yazıyoruz.
tv.setText(&quot;\n\nMerhaba\nBu ilk uygulamamız :)&quot;);
Yazdığımız kodun son hali şu şekilde
*Not: Yazımlarda büyük, küçük harf ayrımına dikkat edilmelidir.
Yazdığımız kodda bulunan satırları inceleyelim.
package com.merhab... : Daha önce de dediğim gibi burada proje sınıflarımız için kullanacağımız üst bağlamı bildiriyoruz.
Uygulamamızın ihtiyaç duyduğu nesneleri, import belirtimi ile projemize dahil ediyoruz. İlk import cümlesinde; android işletim sisteminin, yazdığımız sınıf nesnesini (class) programın yürütüldüğü anda çalıştırılması için gerekli (Activity) özelliğe sahip olduğunu belirtmek için kullanıyoruz. Burada kalıtım yolu ile "Activity" nesnesinden referans alan yeni bir sınıf oluşturuyoruz ki, android işletim sistemi içerisinden uygulamamızı çalıştırdığımızda bu sınıfımızın içerisindeki kodlar çalışmaya başlasın.
İkinci import belirtiminde ise, yaptığımız uygulamanın bir android modülü ya da eklentisi gibi çalışmasını sağlamak için gerekli kütüphaneyi çağırıyoruz.
Üçüncü import da ise daha önce de dediğim gibi TextView nesnesini oluşturmak için gerekli kütüphaneyi çağırmaktayız.
Dikkat ederseniz birinci import cümlesinde çağırdığımız Activity nesnesini burada sınıfımıza kalıtım vermek için kullanıyoruz.
public void odCreate(Bundle.....
İkinci import belirtiminde çağırdığımız nesneyi de burada kullandığımız fonksiyonun argümanı olarak veriyoruz. "Bundle" nesnesi bizim kullandığımız fonksiyonun eklenti olarak iş yapacağını bildiriyor.
super niteliği, kullandığınız nesnenin veya nesne niteliğinin barındırdığı değer dahil tüm özellikleri ile bir üst hiyerarşide bulunan katmana aktarılmasını sağlar. Burada onCreate nesnesine ait savedInstanceState niteliğini bir üst hiyerarşiye aktarıyoruz ki, android işletim sistemi bu eklentinin varlığından haberdar olsun. Aksi takdirde zaten program çalışmaz, çünkü program içerisindeki fonksiyonu dışarıya açmayacaktır. Eğer sadece kendi sınıfımız içerisinde işlemler yapacaksak bu komutun kullanımına gerek yoktur.
tv.setText("\n\nMerhaba\nBu ilk uygulamamız ");
Bu üç satırda TextView nesnemizi oluşturuyoruz ve setContentView ile de gösterilmesini sağlıyoruz.
Evet kodlamamız bu kadar şimdi de yazdığımız kodları çalıştırıp deneyelim Eclipse' in sol tarafında bulunan "Project Explorer" a gelip, proje üzerine ters tıklayın, resimde görüldüğü gibi çalıştırın.
Eğer hata alırsanız büyük ihtimalle sanal cihazınızı eklemeyi unutmuşsunuzdur. Google Android SDK (SDK-Yazılım Geliştirme Kiti) Kurulumu ve Eclipse linkinde bulunan yazı ile beraber işlem adımlarını tekrar edin Evet sanal cihazımız çalışıyor. Burada biraz beklememiz gerekecek, bende yaklaşık 3 dakika sürüyor sanal cihazımın açılması.
Sanal cihaz bir kere açıldıktan sonra kapatmanıza gerek olmadığını da belirtmeliyim.
Ve biraz bekledikten sonra sonuç karşımızda Sorun yaşayan olursa buradan devam edebiliriz. Umarım işinize yarayan bir çalışma olmuştur. Herkese iyi çalışmalar. kosasker,
KnUcLeS, hüzün_ ve Mert Ahmet bunu beğendi.
Tebrikler Çok güzel anlatım gerçekten.
Üyelerimizin bu konudan daha etkin yararlanması için bir süreliğine bu 2 konuyu sabit başlığa alıyorum N3CAT1,
Şukular gelmiş hemen Teşekkür ederim, elimden geldiğince yazmaya çalışacağım. :clover:
çok güzel bir anlatım olumş emeğinize sağlık.
kurması biraz karış geldi bana ama kurabilirsem bunu deniycem SDN Android Market te oluşturabilriz aslında yaptığımız uygulamaları oraya koyarız gerçi bu daha sonraki adım olur ama aklınızda bulunsun Mert Ahmet,
Bende android ile yeni tanıştım. Özellikle vektörel grafiklerin olduğu örnek uygulamalar geliştirip, bu konu hakkında yazılar yazmaya çalışacağım. Takip eden arkadaşlar olacaksa tavsiyem, Java öğrensinler, eclipse' i kurup, kurcalasınlar, eclipse eklentilerini kursunlar ve öğrensinler. Kolay gelsin kosasker,
Hocam anlatım çok güzel, devamını bekliyoruz, bu uygulamayı derleyip, gerçek bir telefona atılabilecek şekle nasıl getirebiliriz? Jar/Jad dosyası mı yapmamız gerekiyor?
android uygulamalarının uzantısı apk dir Mert Ahmet,
Selam, Android Uygulamaları java dili ile, Android kütüphaneleri kullanılarak yazılıyor. Bu yüzden de biraz java dilinin yapısına hakim olmak gerekiyor. Ayrıca Java ve flash ile yapılmış uygulamalar çalıştırılabiliyor. Kolay gelsin :clover:
teşekkürler güzel bi anlatım olmuş.. "başarılarının" devamını diliyorum desem ne demek istediğimi anlarsın heralde BluE_Boi,
bu forumda androide dair olması gereken konulardan biride rom değiştirme yakın zamanda detaylı olarak biri yazarsa iyi olur aslında
teşekürler en kısa zamanda bende androidli bir cihaza gececegim
Elinize sağlık. teşekkürler. Nerden başlayaum diyenler için iyi bir kaynak
Güzel anlatmissin eline saglık
elinize sağlık iyi bir başlangıç oldu
Müthiş bir anlatım olmuş. Dediklerini aynen yaptım ve Android ile ilk programımı yazmış oldum. Teşekkürler paylaşım için orhantigli,
Rica ederim. Gerisi size kalmış. Sözüm vardı fakat projelerden vakit ayıramıyorum.
Merhabalar Ben uygulamayı yaptım fakat yeniden yapılandır diye bir hata almaktayım hatanın orjinali aşağıdaki gibidir. Yardımcı olursanız çok sevinirim.
çok eski yazı eclipse ve sdk güncellendi güncel yazıya androtronik ten ulaşabilirsiniz. düzenli ders yayınlıyor bir arkadaş.
indirme linkide koyarmısın ? teşekkür ederim&#8203;
Zamanlama: 0,1952 saniye