إعداد وضع الموافقة للتطبيقات

هذه الصفحة مخصّصة للمطوّرين الذين يستخدِمون حزمة تطوير البرامج (SDK) لخدمة "إحصاءات Google لبرنامج Firebase" في تطبيقاتهم ويريدون دمج وضع الموافقة. للاطّلاع على مقدمة عن "وضع الموافقة"، يُرجى الاطّلاع على نظرة عامة حول "وضع الموافقة".

توفّر "إحصاءات Google" ميزة "وضع الموافقة" لتعديل سلوك حزمة تطوير البرامج (SDK) استنادًا إلى حالة الموافقة للمستخدمين. يمكنك تنفيذ وضع الموافقة بطريقة أساسية أو متقدّمة إذا لم تكن متأكّدًا من تنفيذ وضع الموافقة الأساسية أو المتقدّمة، يمكنك الاطّلاع على مزيد من المعلومات عن وضع الموافقة الأساسية في مقابل وضع الموافقة المتقدّمة والتحقّق من إرشادات شركتك.

قبل البدء

قبل أن تتمكّن من إدارة موافقة المستخدِم، عليك تنفيذ ما يلي:

لإعداد وضع الموافقة، عليك إجراء ما يلي:

  1. ضبط حالة الموافقة التلقائية

لا يتم ضبط قيم "وضع الموافقة" تلقائيًا. لضبط حالة الموافقة التلقائية لتطبيقك، عليك اتّباع الخطوات التالية:

  1. افتح ملف AndroidManifest.xml الخاص بتطبيقك.
  2. أضِف أزواج المفتاح/القيمة لوضع الموافقة. يصف المفتاح نوع الموافقة وتشير القيمة إلى حالة الموافقة. يمكن أن تكون القيم true، ما يعني أنّه تم منح الموافقة، أو false، ما يعني أنّه تم رفض الموافقة. اضبط ما يلي:

    • google_analytics_default_allow_analytics_storage
    • google_analytics_default_allow_ad_storage
    • google_analytics_default_allow_ad_user_data
    • google_analytics_default_allow_ad_personalization_signals
  3. احفظ التغييرات. بعد ذلك، عليك تنفيذ الآلية الخاصة بتعديل قيم الموافقة.

على سبيل المثال، لضبط كل موافقات المنح لجميع المَعلمات تلقائيًا:

<meta-data android:name="google_analytics_default_allow_analytics_storage" android:value="true" />
<meta-data android:name="google_analytics_default_allow_ad_storage" android:value="true" />
<meta-data android:name="google_analytics_default_allow_ad_user_data" android:value="true" />
<meta-data android:name="google_analytics_default_allow_ad_personalization_signals" android:value="true" />

لتعديل قيم الموافقة بعد إطلاق تطبيق، عليك طلب طريقة setConsent.

تلغي القيمة التي تحدّدها الطريقة setConsent الإعداد التلقائي، وتظل قائمة في جميع عمليات تنفيذ التطبيقات. تظل القيمة على هذه الحالة إلى أن يتم استدعاء setConsent مرة أخرى، حتى إذا أغلق المستخدم التطبيق وأعاد فتحه. لا يعدِّل setConsent المَعلمات التي تحدّدها فقط.

إذا سحب أحد المستخدمين موافقته السابقة على "إحصاءات Google" أو مساحة تخزين الإعلانات، ستحذف "إحصاءات Google" جميع خصائص المستخدمين، بما في ذلك الموافقة على ad_personalization. للحفاظ على خيار موافقة المستخدم لتخصيص الإعلانات، عليك استعادة القيمة السابقة لتخصيص الإعلانات باستخدام setConsent (Kotlin+KTX | Java) .

يعرض المثال التالي طريقة setConsent لتعديل قيم الموافقة المختلفة إلى granted:

Java

// Set consent types.
Map<ConsentType, ConsentStatus> consentMap = new EnumMap<>(ConsentType.class);
consentMap.put(ConsentType.ANALYTICS_STORAGE, ConsentStatus.GRANTED);
consentMap.put(ConsentType.AD_STORAGE, ConsentStatus.GRANTED);
consentMap.put(ConsentType.AD_USER_DATA, ConsentStatus.GRANTED);
consentMap.put(ConsentType.AD_PERSONALIZATION, ConsentStatus.GRANTED);

mFirebaseAnalytics.setConsent(consentMap);

Kotlin

Firebase.analytics.setConsent {
  analyticsStorage(ConsentStatus.GRANTED)
  adStorage(ConsentStatus.GRANTED)
  adUserData(ConsentStatus.GRANTED)
  adPersonalization(ConsentStatus.GRANTED)
}