Api numarası:
Mobil uygulama geliştiriciliğinde, cihazın çalıştığı Android sürümünü ve bu sürüme karşılık gelen API seviyesini öğrenmek, özellikle özellik kontrolü, geriye dönük uyumluluk ve hata yönetimi açısından çok önemlidir. Android işletim sistemi her yıl yeni bir sürümle karşımıza çıkar ve her sürüm, yeni API’lerle birlikte gelir.
📌 Neden API ve Sürüm Adı Bilmek Gerekli?
Uygulama geliştirirken bazı Android API’leri sadece belirli sürümlerle çalışır. Örneğin:
- Biometrik doğrulama (parmak izi) sadece API 23 (Android 6.0 – Marshmallow) ve sonrasında desteklenir.
- Notification Channels API 26 (Oreo) ve üzeri sürümlerde kullanılabilir.
- Scoped Storage gibi dosya erişim kuralları Android 10 (API 29) ile zorunlu hale gelmiştir.
Bu gibi durumlarda, cihazın sürümünü kontrol ederek:
✅ Hangi özelliklerin aktif olabileceğine karar veririz
❌ Eski cihazlarda hata almamak için uyumluluk kodları yazarız
🎯 Geliştirici olarak uygulamamızı daha geniş kullanıcı kitlesi için optimize ederiz.
🔎 Android API Seviyesi ve Sürüm Adı Nasıl Bulunur?
Android cihazın işletim sistemi sürüm bilgilerini almak için Build.VERSION sınıfı kullanılır. Bu sınıf üzerinden hem Android versiyon numarası (örneğin 6.0.1) hem de API seviyesi (örneğin 23) alınabilir.
📜 Kod Örneği: Android Sürümünü ve API Numarasını Öğrenmek
import android.os.Build;
import android.widget.Toast;
// Ana çağrım:
Toast.makeText(getApplicationContext(),
"API ve Versiyon: " + versiyonOgren(),
Toast.LENGTH_LONG).show();
// Sürüm bilgisini döndüren fonksiyon:
public static String versiyonOgren() {
double ossmatematik = Double.parseDouble(
Build.VERSION.RELEASE.replaceAll("(\\d+[.]\\d+)(.*)", "$1")
);
String surumAdi = "Desteklenmeyen";
if(ossmatematik >= 4.1 && ossmatematik < 4.4) surumAdi = "Jelly Bean";
else if(ossmatematik < 5) surumAdi = "Kit Kat";
else if(ossmatematik < 6) surumAdi = "Lollipop";
else if(ossmatematik < 7) surumAdi = "Marshmallow";
else if(ossmatematik < 8) surumAdi = "Nougat";
else if(ossmatematik < 9) surumAdi = "Oreo";
return "Sürüm Adı: " + surumAdi + " v" + ossmatematik +
", API Seviyesi: " + Build.VERSION.SDK_INT;
}
🔍 Kod Ne Yapıyor?
Build.VERSION.RELEASE: Android sürümünü “6.0.1” gibi verir.Build.VERSION.SDK_INT: API seviyesini verir (örnek: 23)..replaceAll(...): Sürüm numarasını sadece ilk iki haneye indirger (örneğin:6.0.1 → 6.0).
🧠 Geliştirici notu: Bazı Android cihazlar
Build.VERSION.RELEASEdeğerini eksik ya da özel formatta verebilir. Bu nedenleSDK_INTdaha güvenlidir.
🔢 Android Sürüm Listesi ve API Seviyeleri Tablosu
Aşağıdaki tablo sayesinde, sürüm adını doğrudan API seviyesine bağlayabiliriz:
| Android Sürümü | API Seviyesi | Sürüm Adı |
|---|---|---|
| Android 14 | 34 | Upside Down Cake |
| Android 13 | 33 | Tiramisu |
| Android 12 | 31–32 | Snow Cone |
| Android 11 | 30 | Red Velvet Cake |
| Android 10 | 29 | (Resmi adı yok) |
| Android 9.0 | 28 | Pie |
| Android 8.1 | 27 | Oreo |
| Android 8.0 | 26 | Oreo |
| Android 7.1 | 25 | Nougat |
| Android 7.0 | 24 | Nougat |
| Android 6.0 | 23 | Marshmallow |
| Android 5.1 | 22 | Lollipop |
| Android 5.0 | 21 | Lollipop |
| Android 4.4 | 19 | Kit Kat |
| Android 4.1 – 4.3 | 16 – 18 | Jelly Bean |
Bu tabloyu kullanarak uygulamanızın minimum desteklediği API seviyesini build.gradle dosyasına yazabilirsiniz.
🏗️ build.gradle İçinde Minimum API Tanımı
Android projelerinde, hangi sürümlerle uyumlu olduğunuzu belirlemek için:
gradleandroid {
compileSdkVersion 34
defaultConfig {
applicationId "com.example.uygulama"
minSdkVersion 21 // En düşük API seviyesi
targetSdkVersion 34 // Hedeflenen API seviyesi
versionCode 1
versionName "1.0"
}
}
📌 Not:
minSdkVersion: Uygulamanızın çalışabileceği en düşük Android sürümütargetSdkVersion: Uygulamanızın optimize edildiği hedef sürüm
🔔 Eğer
minSdkVersionçok düşük seçilirse, bazı modern API fonksiyonlarını kullanamayabilirsiniz.
📁 Google Play Services Gereksinimi İçin build.gradle Eklemesi
Bazı kütüphaneler, örneğin harita, konum, Firebase gibi hizmetleri kullanmak için Google Play Services’i tanımlamak gerekir:
gradledependencies {
implementation 'com.google.android.gms:play-services-location:21.0.1'
implementation 'com.google.android.gms:play-services-maps:18.1.0'
}
🔐 Gerçek Hayat Senaryosu: Neden API Kontrolü Önemli?
Bir uygulama düşünün: Parmak iziyle giriş yapılacak. Ama bu API 23’ten itibaren destekleniyor. Aşağıdaki gibi kontrol yazılmazsa, uygulama çöker:
javaif (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
// Parmak izi ile giriş yapılabilir
} else {
// Alternatif giriş
}
Bu tür koşulları bilmeden yazılım geliştirmek, özellikle Android’deki cihaz çeşitliliği nedeniyle ciddi uyumluluk sorunları doğurur.
🧩 Ekstra Bilgiler
Build.BRAND: Cihazın markasını verir (örneğin Samsung, Xiaomi)Build.MODEL: Cihazın model bilgisini verirBuild.DEVICE: Donanım adıdırBuild.FINGERPRINT: Üretici kimliği
Bu değerler, cihazı tanımlamak ya da destek vermek için kullanılabilir.
🧠 Sonuç ve Özet
Android uygulama geliştirirken, cihazın işletim sistemi sürümünü ve API seviyesini bilmek kritik öneme sahiptir. Çünkü:
- Yeni API’lerin kullanımı belirli Android sürümleriyle sınırlıdır.
- Geriye dönük uyumluluk sağlamak için kodda kontroller yapılmalıdır.
- build.gradle dosyasına doğru minSdk ve targetSdk değerleri girilmelidir.
- Google Play’e yüklenen uygulamaların belirli bir minimum sürüm gerekliliği vardır.
Bu yazıda hem Build.VERSION hem de SDK_INT ile Android sürümünü nasıl kontrol edeceğinizi, API karşılıklarını ve build.gradle yapılandırmasını detaylıca öğrendiniz.
Android sürümleri karşılaştırması burada
Android Platformunun belirli bir sürümünü çalıştıran cihazların göreceli sayısı hakkında bilgi ve
Platform Versiyonları burada

Google Play Servislerini uygulama için hazır hale getirmek için build.gradle içine
yazılabilecek ekler;

Proudly powered by OssMatematik