GAID وAAID — ما هما، وكيف يعملان، وطلبهما في Android

المؤلف: IT Sectr نُشر: 2026-05-22 وقت القراءة: 8 دق

GAID (Google Advertising ID) وAAID (Android Advertising ID) هما معرفان إعلانيان فريدان لأجهزة Android، يُستخدمان لإسناد التثبيتات وتخصيص الإعلانات. GAID هو الاسم الرسمي للأجهزة المزودة بخدمات Google Play، بينما AAID هو مصطلح شامل لجميع أجهزة Android، بما في ذلك الإصدارات بدون خدمات Google. وفقًا لوثائق مطوري Google، 2025، يتطلب الحصول على GAID تشغيل خدمات Google Play. AdvertisingIdClient هو واجهة API الرئيسية للحصول على معرف الإعلانات على Android.

الخلاصة

  • GAID — معرف Google الإعلاني، معرف إعلانات الأجهزة المزودة بخدمات Google Play.
  • AAID — معرف Android الإعلاني، الاسم الشامل لمعرف الإعلانات لجميع أجهزة Android.
  • AdvertisingIdClient — الفئة الرئيسية لخدمات Google Play للحصول على GAID على Android.
  • إلغاء الاشتراك — إعداد المستخدم الذي يمنع تخصيص الإعلانات بناءً على المعرف.
  • Android 14+ — إصدار نظام التشغيل الذي شدد قواعد الوصول إلى معرف الإعلانات للتطبيقات.

ما هما GAID وAAID؟

GAID (Google Advertising ID) هو معرف فريد يُخصص لكل جهاز Android مثبت عليه خدمات Google Play. وهو مخصص للأغراض الإعلانية: إسناد التثبيتات، وقياس فعالية الحملات، وعرض الإعلانات المخصصة. AAID (Android Advertising ID) هو مصطلح أوسع يغطي معرفات الإعلانات على جميع أجهزة Android، بما في ذلك أجهزة Huawei المزودة بـ HMS، وAmazon Fire، وإصدارات AOSP بدون خدمات Google.

الفرق الرئيسي بين GAID وIDFA على iOS هو أن GAID متاح بدون طلب إذن صريح، ولكن منذ Android 14، يجب على التطبيقات الإعلان عن استخدام معرف الإعلانات في البيان والحصول على موافقة المستخدم وفقًا لسياسة الخصوصية في Google Play. لا تتطلب Google حوار نظام (مثل ATT على iOS)، لكن المطور ملزم باتباع قواعد موافقة المستخدم.

وفقًا إحصائيات Google Play Console (2025)، أكثر من 95% من أجهزة Android النشطة تدعم GAID عبر خدمات Google Play. على الأجهزة بدون خدمات Google (السوق الصينية، Huawei AppGallery)، يُستخدم AAID من متاجر التطبيقات المعنية أو معرفات بديلة مثل OAID (Open Anonymous ID) للمصنعين الصينيين.

الميزة الرئيسية لـ GAID على IDFA هي إمكانية الحصول على المعرف بدون حوار نظام حظر. ومع ذلك، تشدد Google المتطلبات باستمرار: منذ Android 14، يجب على التطبيقات التي تستهدف API 34 وما فوق الإعلان صراحة عن إذن AD_ID في البيان.

كيف تعمل معرفات الإعلانات في Android

على Android، يتم تنفيذ الحصول على معرف الإعلانات عبر خدمات Google Play وفئة AdvertisingIdClient. على عكس iOS، حيث يتطلب IDFA حوار ATT صريح، فإن GAID متاح للتطبيق افتراضيًا، ما لم يقم المستخدم بتعطيل تخصيص الإعلانات في إعدادات الجهاز.

واجهة API لـ AdvertisingIdClient

توفر فئة AdvertisingIdClient من الحزمة com.google.android.gms.ads.identifier طريقتين رئيسيتين: getAdvertisingIdInfo (السياق) وstart (السياق). تُرجع الطريقة كائن AdvertisingIdInfo يحتوي على المعرف (سلسلة UUID) والعلم isLimitAdTrackingEnabled، الذي يظهر ما إذا كان المستخدم قد عطّل تخصيص الإعلانات.

يجب تنفيذ استدعاء AdvertisingIdClient في سلسلة خلفية، حيث تصل الطريقة إلى خدمة Google Play عن بعد. يُوصى باستخدام coroutines أو AsyncTask للحصول على المعرف بشكل غير متزامن. إذا كانت خدمات Google Play غير متوفرة على الجهاز، تطرح الطريقة استثناء GooglePlayServicesNotAvailableException — في هذه الحالة، يجب على المطور استخدام طريقة تعريف بديلة.

إعادة التعيين والقيود

يمكن للمستخدم إعادة تعيين GAID في أي وقت عبر الإعدادات — Google — الإعلانات — إعادة تعيين معرف الإعلانات. بعد إعادة التعيين، تتلقى التطبيقات معرفًا جديدًا ويفقد الارتباط بالبيانات السابقة. يمكن للمستخدم أيضًا تفعيل خيار «تعطيل تخصيص الإعلانات»، الذي يعين العلم isLimitAdTrackingEnabled على true.

يجب على المطور احترام العلم isLimitAdTrackingEnabled: إذا كان true، يجب ألا يستخدم التطبيق GAID لتخصيص الإعلانات، ولكن يمكن استخدامه لأغراض محدودة مثل قياس التحويلات، ومكافحة الاحتيال، وتحديد عدد مرات العرض. انتهاك هذه القاعدة يؤدي إلى تعليق التطبيق على Google Play.

قيود Android 14+ لمعرفات الإعلانات

ابتداءً من Android 14 (API 34)، فرضت Google قيودًا جديدة على الوصول إلى معرف الإعلانات. يجب الآن الإعلان عن إذن AD_ID صراحةً في بيان التطبيق للحصول على GAID. إذا لم يعلن التطبيق عن الإذن وكان يستهدف API 34+، فإن استدعاء AdvertisingIdClient يُرجع معرفًا فارغًا.

سياسة خصوصية Google Play

تتطلب سياسة Google Play من التطبيقات التي تستخدم GAID الامتثال لعدة قواعد: يمكن استخدام المعرف فقط للأغراض الإعلانية والتحليلية؛ يجب ألا يربط التطبيق GAID بالبيانات الشخصية دون موافقة صريحة من المستخدم؛ يجب ألا تتم مشاركة GAID مع أطراف ثالثة دون الإشارة في سياسة الخصوصية. منذ 2025، بدأت Google Play في فحص التطبيقات تلقائيًا للامتثال لهذه القواعد باستخدام واجهة Play Integrity API.

يُولى اهتمام خاص لتطبيقات الأطفال: وفقًا لسياسة العائلات في Google Play، لا يمكن للتطبيقات الموجهة للأطفال استخدام GAID لتخصيص الإعلانات تحت أي ظرف. يجب على المطورين استخدام شبكات إعلانية معتمدة للعمل مع جمهور الأطفال.

إلغاء الاشتراك في التخصيص

يشير العلم isLimitAdTrackingEnabled إلى اختيار المستخدم للتطبيق. إذا كان العلم true، يمكن للتطبيق استخدام GAID فقط للعمليات الأساسية: إسناد التثبيتات، والتحليلات، ومكافحة الاحتيال، وتحديد عدد مرات العرض. تخصيص الإعلانات، وإنشاء ملفات تعريف المستخدمين، وإعادة الاستهداف بناءً على GAID محظورة في هذه الحالة.

توصي Google بعدم محاولة تجاوز العلم isLimitAdTrackingEnabled من خلال معرفات بديلة (IMEI، عنوان MAC، Android ID). استخدام معرفات الأجهزة الدائمة محظور تمامًا بموجب سياسة Google Play ويؤدي إلى تعليق فوري للتطبيق دون إمكانية الاستئناف.

أمثلة كود للحصول على GAID

يتطلب الحصول على GAID على Android استدعاءً غير متزامن لـ AdvertisingIdClient مع معالجة الاستثناءات المحتملة. فيما يلي مثال كامل بـ Kotlin باستخدام coroutines.

الحصول على GAID في Kotlin

يوضح المثال الحصول على معرف الإعلانات والتحقق من العلم isLimitAdTrackingEnabled باستخدام coroutines و try-catch لمعالجة أخطاء خدمات Google Play.

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 غير متوفرة — نستخدم معرفًا بديلًا
            null
        } catch (e: IOException) {
            // خطأ في الشبكة عند الوصول إلى الخدمة
            null
        }
    }
}

// الاستخدام في Activity أو ViewModel
fun onGaidRequested() {
    lifecycleScope.launch {
        val info = getAdvertisingInfo(this@MainActivity)
        setupAdNetwork(
            gaid = info?.gaid,
            limitTracking = info?.isLimitAdTrackingEnabled ?: true
        )
    }
}

مقارنة GAID وAAID وIDFA

فهم الاختلافات بين معرفات الإعلانات عبر المنصات المختلفة أمر بالغ الأهمية للمطورين الذين يعملون مع إسناد الإعلانات على كلا نظامي التشغيل. فيما يلي مقارنة للجوانب الرئيسية لـ GAID وAAID وIDFA.

الاختلافات عن IDFA في iOS

الفرق الرئيسي بين GAID وIDFA هو آلية الحصول. يتطلب IDFA موافقة صريحة عبر ATT، وبدونها يُرجع معرفًا فارغًا. GAID متاح بدون حوار نظام، لكنه منذ Android 14+ يتطلب الإعلان عن إذن AD_ID في البيان. كما أن GAID لديه نظام علامات أكثر مرونة: isLimitAdTrackingEnabled لا يمنع الحصول على المعرف، بل يشير فقط للتطبيق بضرورة تقييد الاستخدام.

وفقًا لـ Adjust (2025)، تبلغ نسبة توفر GAID على Android 98% من الأجهزة النشطة مقابل 20–35% لتوفر IDFA على iOS. هذا يجعل Android منصة أكثر قابلية للتنبؤ لإسناد الإعلانات، لكن تشديد سياسات Google يقلص هذه الفجوة تدريجيًا.

AAID، على عكس GAID، غير مرتبط بخدمات Google Play ويمكن استخدامه على أجهزة Huawei (HMS)، وAmazon Fire OS، والمصنعين الصينيين. على أجهزة Huawei، يتم تنفيذ AAID عبر Huawei Mobile Services (HMS) باستخدام فئة AdvertisingIdClient من الحزمة com.huawei.hms.ads.identifier. بالنسبة للسوق الصينية، ينتشر أيضًا OAID (Open Anonymous ID) — وهو معيار طوره تحالف المصنعين الصينيين لاستبدال GAID على الأجهزة بدون خدمات Google. يؤثر اختيار API الصحيح للحصول على المعرف بشكل مباشر على توفر إسناد الإعلانات في الأسواق المختلفة.

الأسئلة الشائعة

ما الفرق بين GAID وAAID؟

GAID (Google Advertising ID) — معرف إعلاني للأجهزة المزودة بخدمات Google Play. AAID (Android Advertising ID) — مصطلح عام لمعرفات الإعلانات في Android، بما في ذلك الأجهزة بدون خدمات Google (Huawei، Amazon Fire). يتم الحصول على GAID عبر Google Play، وAAID عبر SDK لمتجر التطبيقات المعني.

هل هناك حاجة إلى إذن للحصول على GAID في Android 14؟

نعم، ابتداءً من Android 14 (API 34) يجب تحديد إذن AD_ID في البيان. إذا كان التطبيق يستخدم targetSdkVersion 34+ ولم يحدد AD_ID، فإن AdvertisingIdClient يُرجع معرفًا فارغًا. يتم تحديد الإذن عبر الوسم .

هل يمكن إعادة تعيين GAID على الجهاز؟

نعم، يمكن للمستخدم إعادة تعيين GAID في أي وقت عبر الإعدادات — Google — الإعلانات — إعادة تعيين معرف الإعلانات. بعد إعادة التعيين، تتلقى جميع التطبيقات معرفًا جديدًا ويفقد الارتباط بسجل التفاعلات الإعلانية.

ما هو OAID وما الفرق بينه وبين GAID؟

OAID (Open Anonymous ID) — معيار معرف إعلاني طوره تحالف مصنعي الهواتف الذكية الصينيين (Xiaomi، OPPO، vivo، Huawei). يُستخدم على الأجهزة بدون خدمات Google Play للسوق الصينية. على عكس GAID، لا يتطلب OAID Google Play ويعمل عبر SDK الخاص بمصنع الجهاز.

كيف يؤثر العلم isLimitAdTrackingEnabled على العمل مع GAID؟

إذا كان isLimitAdTrackingEnabled يساوي true، لا يمكن للتطبيق استخدام GAID لتخصيص الإعلانات وإنشاء ملفات تعريف المستخدمين وإعادة الاستهداف. ومع ذلك، يمكن استخدام المعرف لأغراض محدودة: إسناد التثبيتات، والتحليلات، ومكافحة الاحتيال، وتحديد عدد مرات العرض.

الملخص

  • GAID — معرف Google الإعلاني للأجهزة المزودة بخدمات Google Play، معرف الإعلانات الرئيسي لنظام Android.
  • AAID — مصطلح عام لمعرفات الإعلانات على جميع أجهزة Android، بما في ذلك Huawei وAmazon Fire.
  • AdvertisingIdClient — واجهة API الرئيسية لخدمات Google Play للحصول على GAID على Android.
  • إذن AD_ID — إذن إجباري للتطبيقات ذات targetSdkVersion 34+ على Android 14+.
  • isLimitAdTrackingEnabled — علم يشير إلى منع المستخدم لتخصيص الإعلانات.
  • OAID — معرف إعلاني بديل للسوق الصينية على الأجهزة بدون خدمات Google.
  • الفرق عن IDFA — لا يتطلب GAID حوار موافقة من النظام، لكن سياسة Google Play تلزم باحترام القيود عند isLimitAdTrackingEnabled = true.

سنقوم بتطوير تطبيق جوال جاهز

تقدم IT Sectr تطبيقات iOS وAndroid للشركات الناشئة والشركات منذ عام 2017. سوف نقدم لك النصح ونقترح أفضل حل.

مناقشة المشروع

اقرأ أيضًا