📲 Android API Numarası ve Sürüm Adı Bulma Rehberi

 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.RELEASE değerini eksik ya da özel formatta verebilir. Bu nedenle SDK_INT daha 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 SeviyesiSürüm Adı
Android 1434Upside Down Cake
Android 1333Tiramisu
Android 1231–32Snow Cone
Android 1130Red Velvet Cake
Android 1029(Resmi adı yok)
Android 9.028Pie
Android 8.127Oreo
Android 8.026Oreo
Android 7.125Nougat
Android 7.024Nougat
Android 6.023Marshmallow
Android 5.122Lollipop
Android 5.021Lollipop
Android 4.419Kit Kat
Android 4.1 – 4.316 – 18Jelly 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:

gradle
android {
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:

gradle
dependencies {
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:

java
if (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 verir
  • Build.DEVICE: Donanım adıdır
  • Build.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

Api numarası

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

yazılabilecek ekler;

Api numarası

Güncel Hali

 

 

 

Yorum yapın