Ders 4: AndroidManifest.xml

25 Ocak 2012 Çarşamba
AndroidManifest.xml dosyasının işlevlerini ve içindeki kısımları bilmek bir proje yaratırken oldukça faydalı olacaktır.

AndroidManifest.xml, tüm kuralların tanımlandığı yerdir. Uygulamanın çalışması için verilmesi gereken izinler burada verilir. Açtığımız bütün activity sınıflarını burada tanımlamamız gerekir. Versiyon ayarlamaları da burada yapılır. Uygulamanın önemli dosyalarından biridir.

Aklımıza gelebilecek birçok şey bu dosya içindeki verilere göre şekillenir. Örneğin; sms gönderme iznini vermediğimiz bir uygulama sms gönderemez veya internet erişimi vermediğimiz bir uygulamanın internete bağlanma imkânı yoktur. Ya da bir activity sınıfını bu dosyada tanıtmadığımız sürece uygulamamız içinde o sınıfa erişmemiz mümkün olmayacaktır!!


Ne, ne işe yarıyor?




<?xml version="1.0"encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.deneme"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk android:minSdkVersion="8"/>
<application
        android:icon="@drawable/ic_launcher"
android:label="@string/app_name" >
<activity
            android:name=".DenemeActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
</application>
</manifest>


  • “package”: tanımlaması sonraki Java tanımlamaları için temel paketi tanımlar. Paket isminin benzersiz olması gerekmektedir. Çünkü AndroidMarketPlace sadece özel paket ismi olan uygulamaları kabul etmektedir. Bu nedenle, diğer geliştiricilerin uygulamaları ile örtüşmeleri engellemek için paket ismi olarak ters alan adı kullanmak iyi bir alışkanlıktır.


  • “android:versionCode” ve “android:versionName” : tanımlamaları kullanıcının gördüğü versiyon ismi (herhangi bir string olabilir) ve uygulamanın versiyonunu gösterir.Integer bir değer olan versionCode, AndroidMarket tarafından uygulamanın daha önce yüklenen versiyonunun güncellenmesi veya yeni bir versiyon yüklenmesi işleminde kullanılmaktadır. Genellikle 1 ile başlayan bu değer, her yeni yüklemede 1 artar.


  • “action android:name=”android.intent.action.MAIN”” : bu sınıf için, uygulama başladığında activitynin de başladığını tanımlayan “intent fitler” kaydı bununla yapılır.


  • “category android:name=”android.intent.category.LAUNCHER””: ile Android cihaz üzerinde bu uygulamanın bir uygulama dizini olarak eklenme işlemi tanımlanmaktadır.


  • “@ değeri”: gerçek değerleri içeren kaynağı işaret eder. Bu yolla değerlere erişmek, değişik kaynakların ( yazı,renk,ikon) farklı telefonlarda çalışmasını sağlar.


  • “android:icon”: değeri uygulamamız için bir icondur. Burada android SDK’nın bize sağladığı iconu default olarak veriyor. Bu iconu res dizininin altında bulunan drawable dizininin altında görebiliriz. İconu değiştirmek istersek, buraya ( drawable dizininin altına) resmi ekledikten sonra @drawabla/eklenenresimadı  şeklinde yazmamız yeterli olacaktır.


  • “android:label”: telefon üzerinde uygulamanın adıdır. ( Menüde ve çalıştırdığımız zaman başlık bölümünde gözüken kelime)

3 yorum:

  1. Homeless dedi ki...:

    Ters alan adı nedir?

  1. 3k dedi ki...:

    normal bir alan adı google.com mesela. Sen bunun tersini belirtiyosun. com.google yapıyosun, bu da ters alan adı oluyor. :))

  1. Homeless dedi ki...:

    Şimdi kaptım mercimeği.;)) ben de diyordum nerden geliyor java da ki paket adlarının başının com olması.:)) okullar için de edu kullanıyoruz kurmalıydım bu bağlantıyı ama ben yaaa...:(((

Yorum Gönder