Android

Android Projesindeki Dosya ve Klasörleri Tanıyalım

Android File SystemBir android projesi oluşturuğunuzda karşınıza bir çok dosya ve klasör çıktığını görürsünüz. Eğer bir android uygulaması geliştirmek istiyorsanız bu dosya ve klasörlerin ne amaçla kullanıldıklarını bilmeniz gerekmektedir.

Bir önceki yazımda bir android projesi
oluşturmuştuk, şimdi ise android projeleri içerisinde yer alan dosya ve klasörleri tanıyacağız.

 

Ekran Resmi 2014-03-29 23.50.501- src Klasörü   

Burada src, kaynak (source) kelimesinin kısaltılması olarak kullanılmıştır. Bu klasör içerisinde, projemiz için gerekli olan kaynak kodlar / dosyalar yer almaktadır. Kaynak kodlar, uygulamamızın temelidir. Uygulamamız için gerekli bütün işlemleri bu dosyalar ile gerçekleştirebiliyoruz.

Burada yer alan dosyalar .java uzantılı dosyalar olup Java dili kullanılarak yazılan kodlardan oluşur.

2- gen Klasörü

Bu klasör içerisindeki dosyalar, sistem tarafından otomatik olarak oluşturulur. Gen ismi de, oluşturulan (generated) kelimesinin kısaltmasıdır.

3- R.java Dosyası

gen klasörü içerisinde yer alan bu dosya, yukarıda da belirttiğim gibi sistem tarafından oluşturulan bir dosyadır. res klasörünün içerisine oluşturduğumuz tüm kaynakların referansları bu dosyada yer alır. Oluşturduğumuz kaynakları bu referanslar sayesinde kullanabiliriz. Bu sebeple bu referanslar res klasörü içerisinde yer alan her kaynak için otomatik olarak üretilir. Bu dosyaya dışarıdan müdahale edilmemesi önerilir.

4- assets Klasörü

Bu klasörde, android tarafından tanınmayan verilerin tutulduğu dosyalar yer alır. Android platformu bu tür kaynakları tanımadığından dolayı R.java dosyası içerisinde herhangi bir referans  üretilmez.

Burada bulunan dosyalar uygulama paketi içerisinde yer alırlar. Örneğin; bir sqLite dosyasını uygulamanızda kullanmak istiyorsanız, bu dosyayı assets klasörü içerisine koymalısınız. Bu tür verilere, kodunuz içerisinde AssetsManager sınıfını ve getAssets() metodunu kullanarak ulaşabilirsiniz.

5- bin Klasörü

Bu klasör, uygulamanızın derlenmiş halini içerisinde bulundurur. Sizin bu klasöre müdahale etmenize gerek yoktur.

6- libs Klasörü

Bu klasör, adından da anlaşılacağı gibi kütüphanelerin(libraries) koyulduğu klasördür. Android SDK içerisinde yer almayan ve projenizde kullanmak istediğiniz java kütüphanelerini bu klasör içerisine kopyalayabilirsiniz.

.jar uzantılı bu kütüphaneleri libs klasörü içerisine kopyaladıktan sonra dosyaya sağ tıklayıp Add to Build Path seçeneğini seçmelisiniz. Aksi taktirde kütüphaneniz proje tarafından tanınmaz.

7- res Klasörü

res, kaynaklar (resources) kelimesinin kısaltmasıdır. Projeniz için gerekli kaynaklar burada yer almalıdır. Burada yer alan kaynaklar, platform tarafından tanınan kaynaklardır ve bu kaynaklar için R.java dosyası içerisinde referanslar üretilir. Bu sayede kodlarınız arasından bu kaynaklara rahat bir şekilde ulaşabilirsiniz.

7.1- drawable Klasörleri

 Bu klasörler, uygulamanızda kullanmak istediğiniz resimleri koymanız içindir. Uygulamalarınızın kullanılacağı cihazların çözünürlükleri farklı olacağından farklı boyutlarda resimler koymanız gerekmektedir. Bu sebeple drawable klasörü bir tane değildir. Farklı çözünürlüklere uygun klasörler mevcuttur. klasörlerin yanında yer alan; ldpi, hdpi, mdpi, xdpi, xxdpi gibi ifadeler boyutları belirmektedir. ldpi; küçük, mdpi; orta, hdpi; büyük, xdpi; daha büyük, xxdpi; çok daha büyük resimleri ifade etmektedir. Ekran çözünürlükleri arttıkça bu klasörlerin sayısıda artmaktadır.

7.2- layout Klasörleri

Bu klasör içerisinde ise, oluşturacağınız ekranlar için tasarımlar hazırlayacağınız xml dosyaları yer almaktadır. Örnek bir xml dosyasını aşağıda görebilirsiniz.

 

7.3- values Klasörleri

Uygulama içerisinde kullanmak istediğiniz sabit değişkenleri, bu klasör içerisinde tutabilirsiniz. Örneğin, bir string’i bu klasör içerinde yer alan string.xml dosyası içerisinde tanımlarsanız, o string’i istediğiniz yerde kullanabilirsiniz ve değiştirmek istediğinizde tek bir yerden değiştirmeniz yeterli olur.

Not: Kod içerisinden buradaki değişkenlerin değerini değiştiremezsiniz.

8- AndroidManifest Dosyası

Bu dosyayı uygulanızın bir taslağı olarak düşünebilirsiniz. Uygulamanızda kullanacağınız bütün ekranların burada tanımlanması gerekmektedir. Ayrıca uygulamanızın bütün özellikleri burada tanımlıdır. Uygulamanızın kullanılacağı cihazlardan isteyeceği izinler de burada tanımlanmalıdır. Bunların nasıl yapılacağına, ayrıntılı bir şekilde ilerleyen yazılarım içerisinde yer vereceğim. Örnek olarak aşağıdaki dosyayı inceleyebilirsiniz.

 

 

 

Yıldız Teknik Üniversitesi Bilgisayar Mühendisliği mezunudur. Java dilinin temellerine hâkimdir. iGones’da Mobil Uygulama Geliştirici olarak çalışmaktadır. Genellikle Android uygulamaları geliştiren ve bu alanda çalışırken başkalarına da yardımcı olmayı görev edinen bir YAZARdır.