GAID ve AAID — nedir, nasıl çalışır ve Android'de talep edilmesi

Yazar: IT Sectr Yayınlanma: 2026-05-22 Okuma süresi: 8 dk

GAID (Google Advertising ID) ve AAID (Android Advertising ID), kurulum atıfı ve reklam kişiselleştirme için kullanılan benzersiz Android cihaz reklam tanımlayıcılarıdır. GAID, Google Play Services'e sahip cihazlar için resmi ad, AAID ise Google hizmetleri olmayan yapılar dahil tüm Android cihazlar için evrensel bir terimdir. Google Developer Documentation, 2025'e göre GAID almak Google Play Services gerektirir. AdvertisingIdClient, Android'de reklam tanımlayıcıyı almak için ana API'dir.

Önemli Noktalar

  • GAID — Google Advertising ID, Google Play Services'e sahip cihazların reklam tanımlayıcısı.
  • AAID — Android Advertising ID, tüm Android cihazlar için reklam tanımlayıcısının evrensel adı.
  • AdvertisingIdClient — Android'de GAID almak için ana Google Play Services sınıfı.
  • opt-out — tanımlayıcıya dayalı reklam kişiselleştirmeyi yasaklayan kullanıcı ayarı.
  • Android 14+ — uygulamalar için reklam tanımlayıcısına erişim kurallarını sıkılaştıran işletim sistemi sürümü.

GAID ve AAID nedir?

GAID (Google Advertising ID), Google Play Services yüklü her Android cihaza atanan benzersiz bir tanımlayıcıdır. Reklam amaçları için tasarlanmıştır: kurulum atıfı, kampanya ölçümü ve kişiselleştirilmiş reklam gösterme. AAID (Android Advertising ID), HMS'li Huawei cihazlar, Amazon Fire ve Google hizmetleri olmayan AOSP yapılar dahil tüm Android cihazlardaki reklam tanımlayıcılarını kapsayan daha geniş bir terimdir.

GAID ile iOS'daki IDFA arasındaki temel fark, GAID'nin açık bir izin talebi olmadan kullanılabilmesidir, ancak Android 14'ten itibaren uygulamalar bildirim dosyasında reklam tanımlayıcı kullanımını beyan etmeli ve Google Play Gizlilik Politikası'na uygun olarak kullanıcı onayı almalıdır. Google (iOS'taki ATT gibi) bir sistem diyaloğu gerektirmez, ancak geliştirici kullanıcı onay kurallarına uymalıdır.

Google Play Console Statistics (2025)'e göre aktif Android cihazların %95'inden fazlası Google Play Services aracılığıyla GAID'yi destekler. Google hizmetleri olmayan cihazlarda (Çin pazarı, Huawei AppGallery), ilgili uygulama mağazalarının AAID'si veya Çinli üreticiler için OAID (Open Anonymous ID) gibi alternatif tanımlayıcılar kullanılır.

GAID'nin IDFA'ya göre temel avantajı, tanımlayıcının engelleyici bir sistem diyaloğu olmadan alınabilmesidir. Ancak Google gereksinimleri sürekli sıkılaştırmaktadır: Android 14'ten itibaren API 34 ve üzerini hedefleyen uygulamalar bildirim dosyasında AD_ID iznini açıkça beyan etmelidir.

Android reklam tanımlayıcıları nasıl çalışır

Android'de reklam tanımlayıcısı almak Google Play Services ve AdvertisingIdClient sınıfı aracılığıyla uygulanır. IDFA'nın açık bir ATT diyaloğu gerektirdiği iOS'un aksine, kullanıcı cihaz ayarlarında reklam kişiselleştirmeyi devre dışı bırakmadığı sürece GAID varsayılan olarak uygulama için kullanılabilir.

AdvertisingIdClient API

com.google.android.gms.ads.identifier paketindeki AdvertisingIdClient sınıfı iki ana yöntem sağlar: getAdvertisingIdInfo (bağlam) ve start (bağlam). Yöntem, tanımlayıcıyı (UUID dizesi) ve kullanıcının reklam kişiselleştirmeyi devre dışı bırakıp bırakmadığını gösteren isLimitAdTrackingEnabled bayrağını içeren bir AdvertisingIdInfo nesnesi döndürür.

AdvertisingIdClient çağrısı bir arka plan iş parçacığında yapılmalıdır, çünkü yöntem uzak Google Play hizmetine erişir. Tanımlayıcının asenkron olarak alınması için coroutine veya AsyncTask kullanılması önerilir. Cihazda Google Play Services mevcut değilse, yöntem GooglePlayServicesNotAvailableException istisnası fırlatır — bu durumda geliştirici alternatif bir tanımlama yöntemi kullanmalıdır.

Sıfırlama ve kısıtlamalar

Kullanıcı GAID'yi herhangi bir zamanda Ayarlar — Google — Reklamlar — Reklam tanımlayıcısını sıfırla yoluyla sıfırlayabilir. Sıfırlamadan sonra uygulamalar yeni bir tanımlayıcı alır ve önceki verilerle bağlantı kaybolur. Kullanıcı ayrıca «Reklam kişiselleştirmeyi devre dışı bırak» seçeneğini etkinleştirebilir, bu da isLimitAdTrackingEnabled bayrağını true olarak ayarlar.

Geliştirici isLimitAdTrackingEnabled bayrağına saygı göstermelidir: true ise, uygulama GAID'yi reklam kişiselleştirme için kullanmamalı, ancak dönüşüm ölçümü, dolandırıcılık önleme ve sıklık sınırlaması gibi sınırlı amaçlar için kullanabilir. Bu kuralın ihlali Google Play'de uygulamanın askıya alınmasına yol açar.

Reklam tanımlayıcıları için Android 14+ kısıtlamaları

Android 14'ten (API 34) başlayarak Google, reklam tanımlayıcısına erişim konusunda yeni kısıtlamalar getirdi. GAID almak için AD_ID izni artık uygulama bildirim dosyasında açıkça beyan edilmelidir. Uygulama izni beyan etmez ve API 34+'yı hedeflerse, AdvertisingIdClient çağrısı boş bir tanımlayıcı döndürür.

Google Play Gizlilik Politikası

Google Play Politikası, GAID kullanan uygulamaların birkaç kurala uymasını gerektirir: tanımlayıcı yalnızca reklam ve analiz amaçları için kullanılabilir; uygulama, açık kullanıcı onayı olmadan GAID'yi kişisel verilerle ilişkilendirmemelidir; GAID, gizlilik politikasında belirtilmeden üçüncü taraflarla paylaşılmamalıdır. 2025'ten itibaren Google Play, Play Integrity API'yi kullanarak uygulamaları bu kurallara uygunluk açısından otomatik olarak taramaya başlamıştır.

Çocuk uygulamalarına özel dikkat gösterilir: Google Play Families Policy'ye göre çocuklara yönelik uygulamalar hiçbir koşulda reklam kişiselleştirme için GAID kullanamaz. Geliştiriciler çocuk izleyiciler için sertifikalı reklam ağları kullanmalıdır.

Kişiselleştirmeyi reddetme

isLimitAdTrackingEnabled bayrağı, kullanıcının seçimini uygulamaya bildirir. Bayrak true ise, uygulama GAID'yi yalnızca temel işlemler için kullanabilir: kurulum atıfı, analiz, dolandırıcılık önleme, sıklık sınırlaması. Bu durumda GAID'ye dayalı reklam kişiselleştirme, kullanıcı profili oluşturma ve yeniden hedefleme yasaktır.

Google, alternatif tanımlayıcılar (IMEI, MAC adresi, Android ID) aracılığıyla isLimitAdTrackingEnabled bayrağını atlatmaya çalışılmamasını önerir. Kalıcı donanım tanımlayıcılarının kullanımı Google Play politikası tarafından kesinlikle yasaktır ve itiraz imkanı olmaksızın uygulamanın derhal askıya alınmasına yol açar.

GAID almak için kod örnekleri

Android'de GAID almak, olası istisnaların yönetimiyle AdvertisingIdClient'a asenkron çağrı gerektirir. Aşağıda coroutine kullanan Kotlin'de tam bir örnek verilmiştir.

Kotlin'de GAID almak

Örnek, Google Play Services hatalarını yönetmek için coroutine ve try-catch kullanarak reklam tanımlayıcısını almayı ve isLimitAdTrackingEnabled bayrağını kontrol etmeyi gösterir.

kotlin
import com.google.android.gms.ads.identifier.AdvertisingIdClient
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.withContext

data class AdvertisingInfo(
    val gaid: String,
    val isLimitAdTrackingEnabled: Boolean
)

suspend fun getAdvertisingInfo(context: Context): AdvertisingInfo? {
    return withContext(Dispatchers.IO) {
        try {
            val adInfo = AdvertisingIdClient.getAdvertisingIdInfo(context)
            AdvertisingInfo(
                gaid = adInfo.id,
                isLimitAdTrackingEnabled = adInfo.isLimitAdTrackingEnabled(true)
            )
        } catch (e: GooglePlayServicesNotAvailableException) {
            // Google Play Services kullanılamıyor — alternatif ID kullan
            null
        } catch (e: IOException) {
            // Hizmete erişirken ağ hatası
            null
        }
    }
}

// Activity veya ViewModel'de kullanım
fun onGaidRequested() {
    lifecycleScope.launch {
        val info = getAdvertisingInfo(this@MainActivity)
        setupAdNetwork(
            gaid = info?.gaid,
            limitTracking = info?.isLimitAdTrackingEnabled ?: true
        )
    }
}

GAID, AAID ve IDFA karşılaştırması

Her iki işletim sisteminde reklam atıfı ile çalışan geliştiriciler için farklı platformlardaki reklam tanımlayıcıları arasındaki farkları anlamak kritik öneme sahiptir. Aşağıda GAID, AAID ve IDFA'nın temel yönlerinin bir karşılaştırması bulunmaktadır.

iOS IDFA'dan farkları

GAID ve IDFA arasındaki temel fark, alma mekanizmasıdır. IDFA, ATT aracılığıyla açık onay gerektirir, onay olmadan boş tanımlayıcı döndürülür. GAID sistem diyaloğu olmadan kullanılabilir, ancak Android 14+'tan itibaren bildirim dosyasında AD_ID izni beyanı gerektirir. GAID ayrıca daha esnek bir bayrak sistemine sahiptir: isLimitAdTrackingEnabled tanımlayıcı almayı engellemez, yalnızca uygulamaya kullanımı sınırlaması için sinyal verir.

Adjust (2025)'e göre Android'de GAID kullanılabilirliği aktif cihazların %98'i iken, iOS'ta IDFA kullanılabilirliği %20–35'tir. Bu, Android'i reklam atıfı için daha öngörülebilir bir platform yapar, ancak Google politikalarının sıkılaştırılması bu farkı giderek kapatmaktadır.

AAID, GAID'den farklı olarak Google Play Services'e bağlı değildir ve Huawei (HMS), Amazon Fire OS ve Çinli üretici cihazlarında kullanılabilir. Huawei cihazlarında AAID, com.huawei.hms.ads.identifier paketindeki AdvertisingIdClient sınıfı ile Huawei Mobile Services (HMS) aracılığıyla uygulanır. Çin pazarı için OAID (Open Anonymous ID) de yaygındır — Google hizmetleri olmayan cihazlarda GAID'nin yerini almak üzere Çinli üreticiler ittifakı tarafından geliştirilmiş bir standart. Tanımlayıcıyı almak için doğru API seçimi, farklı pazarlarda reklam atıfının kullanılabilirliğini doğrudan etkiler.

Sıkça Sorulan Sorular

GAID ve AAID arasındaki fark nedir?

GAID (Google Advertising ID), Google Play Services'e sahip cihazlar için reklam tanımlayıcısıdır. AAID (Android Advertising ID), Google hizmetleri olmayan cihazlar (Huawei, Amazon Fire) dahil Android reklam tanımlayıcıları için genel bir terimdir. GAID Google Play aracılığıyla, AAID ilgili uygulama mağazasının SDK'sı aracılığıyla alınır.

Android 14'te GAID almak için izin gerekli mi?

Evet, Android 14'ten (API 34) başlayarak bildirim dosyasında AD_ID izninin belirtilmesi gerekir. Uygulama targetSdkVersion 34+ ise ve AD_ID belirtmezse, AdvertisingIdClient boş tanımlayıcı döndürür. İzin etiketi aracılığıyla belirtilir.

Cihazda GAID sıfırlanabilir mi?

Evet, kullanıcı GAID'yi herhangi bir zamanda Ayarlar — Google — Reklamlar — Reklam tanımlayıcısını sıfırla yoluyla sıfırlayabilir. Sıfırlamadan sonra tüm uygulamalar yeni bir tanımlayıcı alır ve reklam etkileşim geçmişiyle bağlantı kaybolur.

OAID nedir ve GAID'den nasıl farklıdır?

OAID (Open Anonymous ID), Çinli akıllı telefon üreticileri ittifakı (Xiaomi, OPPO, vivo, Huawei) tarafından geliştirilmiş bir reklam tanımlayıcı standardıdır. Çin pazarı için Google Play Services olmayan cihazlarda kullanılır. GAID'den farklı olarak OAID, Google Play gerektirmez ve cihaz üreticisinin SDK'sı aracılığıyla çalışır.

isLimitAdTrackingEnabled bayrağı GAID ile çalışmayı nasıl etkiler?

isLimitAdTrackingEnabled true ise, uygulama GAID'yi reklam kişiselleştirme, kullanıcı profili oluşturma ve yeniden hedefleme için kullanamaz. Ancak tanımlayıcı sınırlı amaçlar için kullanılabilir: kurulum atıfı, analiz, dolandırıcılık önleme ve sıklık sınırlaması.

Özet

  • GAID — Google Play Services'e sahip cihazlar için Google Advertising ID, Android'in ana reklam tanımlayıcısı.
  • AAID — Huawei ve Amazon Fire dahil tüm Android cihazlardaki reklam tanımlayıcıları için genel terim.
  • AdvertisingIdClient — Android'de GAID almak için ana Google Play Services API'si.
  • AD_ID izni — Android 14+ üzerinde targetSdkVersion 34+ olan uygulamalar için zorunlu izin.
  • isLimitAdTrackingEnabled — kullanıcının reklam kişiselleştirme yasağını bildiren bayrak.
  • OAID — Google hizmetleri olmayan cihazlarda Çin pazarı için alternatif reklam tanımlayıcısı.
  • IDFA'dan farkı — GAID sistem onay diyaloğu gerektirmez, ancak Google Play politikası isLimitAdTrackingEnabled = true olduğunda kısıtlamalara uymayı zorunlu kılar.

Anahtar teslim bir mobil uygulama geliştireceğiz

IT Sectr, 2017'den beri girişimler ve işletmeler için iOS ve Android uygulamaları oluşturmaktadır. Size danışmanlık yapacak ve en iyi çözümü önereceğiz.

Projeyi tartış

Ayrıca okuyun