UMP SDK टूल सेट अप करना

प्लैटफ़ॉर्म चुनें: Android नई सुविधा Android iOS Unity Flutter

Google User Messaging Platform (UMP) SDK, निजता और मैसेज सेवा से जुड़ा एक टूल है. इसकी मदद से, निजता से जुड़े विकल्पों को मैनेज किया जा सकता है. ज़्यादा जानकारी के लिए, निजता और मैसेज सेवा के बारे में लेख पढ़ें.

मैसेज का टाइप बनाना

अपने AdMob खाते के निजता और मैसेज सेवा टैब में, उपयोगकर्ता के लिए उपलब्ध मैसेज के किसी टाइप का इस्तेमाल करके, उपयोगकर्ता के लिए मैसेज बनाएं. UMP SDK, आपके प्रोजेक्ट में सेट किए गए AdMob ऐप्लिकेशन आईडी से बनाया गया निजता मैसेज दिखाने की कोशिश करता है.

ज़्यादा जानकारी के लिए, निजता और मैसेज सेवा के बारे में लेख पढ़ें.

requestConsentInfoUpdate() का इस्तेमाल करके, हर बार ऐप्लिकेशन लॉन्च होने पर, उपयोगकर्ता की सहमति की जानकारी के अपडेट का अनुरोध करें. इस अनुरोध से, इन चीज़ों की जांच की जाती है:

  • सहमति की ज़रूरत है या नहीं. उदाहरण के लिए, पहली बार सहमति की ज़रूरत होती है या पहले दी गई सहमति की अवधि खत्म हो गई है.
  • निजता विकल्पों के एंट्री पॉइंट की ज़रूरत है या नहीं. निजता से जुड़े कुछ मैसेज के लिए, ऐप्लिकेशन को उपयोगकर्ताओं को किसी भी समय, निजता के विकल्प बदलने की अनुमति देनी होती है.
@override
void initState() {
  super.initState();

  // Create a ConsentRequestParameters object.
  final params = ConsentRequestParameters();

  // Request an update to consent information on every app launch.
  ConsentInformation.instance.requestConsentInfoUpdate(
    params,
    () async {
      // Called when consent information is successfully updated.
    },
    (FormError error) {
      // Called when there's an error updating consent information.
    },
  );
}

निजता मैसेज का फ़ॉर्म लोड करना और दिखाना

सहमति की सबसे नई स्थिति मिलने के बाद, loadAndShowConsentFormIfRequired() को कॉल करें. इससे, उपयोगकर्ता की सहमति लेने के लिए ज़रूरी सभी फ़ॉर्म लोड हो जाएंगे. लोड होने के बाद, फ़ॉर्म तुरंत दिखते हैं.

@override
void initState() {
  super.initState();

  // Create a ConsentRequestParameters object.
  final params = ConsentRequestParameters();

  // Request an update to consent information on every app launch.
  ConsentInformation.instance.requestConsentInfoUpdate(
    params,
    () async {
      ConsentForm.loadAndShowConsentFormIfRequired((loadAndShowError) {
        if (loadAndShowError != null) {
          // Consent gathering failed.
        }

        // Consent has been gathered.
      });
    },
    (FormError error) {
      // Handle the error.
    },
  );
}

निजता के विकल्प

निजता मैसेज के कुछ फ़ॉर्म, पब्लिशर की ओर से रेंडर किए गए निजता विकल्पों के एंट्री पॉइंट से दिखाए जाते हैं. इससे, उपयोगकर्ता किसी भी समय, निजता के विकल्प मैनेज कर सकते हैं. निजता विकल्पों के एंट्री पॉइंट पर, आपके उपयोगकर्ताओं को कौनसा मैसेज दिखता है, यह जानने के लिए, उपयोगकर्ता के लिए उपलब्ध मैसेज के टाइप देखें.

यह देखना कि निजता विकल्पों के एंट्री पॉइंट की ज़रूरत है या नहीं

requestConsentInfoUpdate() को कॉल करने के बाद, getPrivacyOptionsRequirementStatus() की जांच करें. इससे यह पता चलेगा कि आपके ऐप्लिकेशन के लिए, निजता विकल्पों के एंट्री पॉइंट की ज़रूरत है या नहीं. अगर एंट्री पॉइंट की ज़रूरत है, तो अपने ऐप्लिकेशन में दिखने वाला और इंटरैक्ट किया जा सकने वाला यूज़र इंटरफ़ेस (यूआई) एलिमेंट जोड़ें. इससे, निजता विकल्पों का फ़ॉर्म दिखेगा. अगर निजता एंट्री पॉइंट की ज़रूरत नहीं है, तो अपने यूआई एलिमेंट को इस तरह कॉन्फ़िगर करें कि वह दिखे नहीं और उससे इंटरैक्ट न किया जा सके.

/// Helper variable to determine if the privacy options entry point is required.
Future<bool> isPrivacyOptionsRequired() async {
  return await ConsentInformation.instance
      .getPrivacyOptionsRequirementStatus() ==
      PrivacyOptionsRequirementStatus.required;
}

निजता विकल्पों की ज़रूरत की स्थितियों की पूरी सूची के लिए, PrivacyOptionsRequirementStatus देखें.

निजता विकल्पों का फ़ॉर्म दिखाना

जब उपयोगकर्ता आपके एलिमेंट से इंटरैक्ट करता है, तो निजता विकल्पों का फ़ॉर्म दिखाएं:

ConsentForm.showPrivacyOptionsForm((formError) {
  if (formError != null) {
    debugPrint("${formError.errorCode}: ${formError.message}");
  }
});

उपयोगकर्ता की सहमति के साथ विज्ञापनों के लिए अनुरोध करना

विज्ञापनों के लिए अनुरोध करने से पहले, canRequestAds() का इस्तेमाल करके यह देखें कि आपने उपयोगकर्ता से सहमति ली है या नहीं:

await ConsentInformation.instance.canRequestAds()

यहां उन जगहों की सूची दी गई है जहां यह देखा जा सकता है कि सहमति इकट्ठा करते समय, विज्ञापनों के लिए अनुरोध किया जा सकता है या नहीं:

  • मौजूदा सेशन में, UMP SDK के सहमति इकट्ठा करने के बाद.
  • requestConsentInfoUpdate() को कॉल करने के तुरंत बाद. ऐसा हो सकता है कि UMP SDK ने पिछले ऐप्लिकेशन सेशन में सहमति ली हो.

अगर सहमति इकट्ठा करने की प्रोसेस के दौरान कोई गड़बड़ी होती है, तो देखें कि विज्ञापनों के लिए अनुरोध किया जा सकता है या नहीं. UMP SDK, पिछले ऐप्लिकेशन सेशन से सहमति की स्थिति का इस्तेमाल करता है.

विज्ञापनों के लिए बार-बार अनुरोध करने से बचना

सहमति इकट्ठा करने के बाद और requestConsentInfoUpdate() को कॉल करने के बाद, canRequestAds() की जांच करते समय, पक्का करें कि आपकी लॉजिक, विज्ञापनों के लिए बार-बार अनुरोध करने से रोके. ऐसा हो सकता है कि दोनों जांचों में true दिखे. उदाहरण के लिए, बूलियन वैरिएबल का इस्तेमाल करें.

टेस्ट करना

अगर आपको डेवलपमेंट के दौरान, अपने ऐप्लिकेशन में इंटिग्रेशन की जांच करनी है, तो अपने टेस्ट डिवाइस को प्रोग्राम के ज़रिए रजिस्टर करने के लिए यह तरीका अपनाएं. अपना ऐप्लिकेशन रिलीज़ करने से पहले, टेस्ट डिवाइस के आईडी सेट करने वाला कोड हटाना न भूलें.

  1. requestConsentInfoUpdate() को कॉल करें.
  2. लॉग आउटपुट में, यहां दिए गए उदाहरण जैसा मैसेज देखें. इसमें आपके डिवाइस का आईडी और उसे टेस्ट डिवाइस के तौर पर जोड़ने का तरीका दिखाया गया है:

    Android

    Use new ConsentDebugSettings.Builder().addTestDeviceHashedId("33BE2250B43518CCDA7DE426D04EE231")
    to set this as a debug device.
    

    iOS

    <UMP SDK>To enable debug mode for this device,
    set: UMPDebugSettings.testDeviceIdentifiers = @[2077ef9a63d2b398840261c8221a0c9b]
    
  3. अपने टेस्ट डिवाइस का आईडी, क्लिपबोर्ड पर कॉपी करें.

  4. अपने कोड में बदलाव करें ताकि ConsentDebugSettings.testIdentifiers को कॉल किया जा सके और अपने टेस्ट डिवाइस के आईडी की सूची पास की जा सके.

    ConsentDebugSettings debugSettings = ConsentDebugSettings(
      testIdentifiers: ["TEST-DEVICE-HASHED-ID"],
    );
    
    ConsentRequestParameters params =
        ConsentRequestParameters(consentDebugSettings: debugSettings);
    
    ConsentInformation.instance.requestConsentInfoUpdate(params, () async {
      // ...
    };
    

किसी जगह या इलाके को फ़ोर्स करना

UMP SDK, debugGeography का इस्तेमाल करके, आपके ऐप्लिकेशन के व्यवहार की जांच करने का एक तरीका उपलब्ध कराता है. इससे यह पता चलता है कि डिवाइस अलग-अलग इलाकों में कैसा काम करता है. जैसे, यूरोपियन इकनॉमिक एरिया (ईईए), यूनाइटेड किंगडम (यूके) और स्विट्ज़रलैंड. ध्यान दें कि डीबग सेटिंग सिर्फ़ टेस्ट डिवाइसों पर काम करती हैं.

ConsentDebugSettings debugSettings = ConsentDebugSettings(
  debugGeography: DebugGeography.debugGeographyEea,
  testIdentifiers: ["TEST-DEVICE-HASHED-ID"],
);

ConsentRequestParameters params =
    ConsentRequestParameters(consentDebugSettings: debugSettings);

ConsentInformation.instance.requestConsentInfoUpdate(params, () async {
  // ...
};

UMP SDK की मदद से अपने ऐप्लिकेशन की जांच करते समय, SDK की स्थिति रीसेट करना मददगार साबित हो सकता है. इससे, उपयोगकर्ता के पहले इंस्टॉल करने के अनुभव को सिम्युलेट किया जा सकता है. इसके लिए, SDK में reset() तरीका उपलब्ध है.

ConsentInformation.instance.reset();

GitHub पर मौजूद उदाहरण

Flutter के उदाहरणों में, इस पेज पर बताए गए UMP SDK इंटिग्रेशन का पूरा उदाहरण देखें .