ट्यूटोरियल: AdMob, Google Analytics और Firebases का उपयोग करके हाइब्रिड मुद्रीकरण को अनुकूलित करें

चरण 3: विशिष्ट विज्ञापन अनुभव दिखाने के लिए फायरबेस रिमोट कॉन्फ़िगरेशन सेट करें


परिचय: AdMob, Google Analytics और Firebase का उपयोग करके हाइब्रिड मुद्रीकरण को अनुकूलित करें
चरण 1: प्रदर्शन के लिए नई विज्ञापन इकाइयाँ बनाने के लिए AdMob का उपयोग करें
चरण 2: Google Analytics सेट करें

चरण 3: विशिष्ट विज्ञापन अनुभव दिखाने के लिए फायरबेस रिमोट कॉन्फ़िगरेशन सेट करें


अंतिम चरण के अंत में, आपने Google Analytics ऑडियंस के बारे में सीखा। इस चरण में, आप एक रिमोट कॉन्फिग बूलियन-नियंत्रित पैरामीटर (जिसे ad_control_switch कहा जाता है) बनाएंगे जो "खरीदार" दर्शकों का लाभ उठाता है। फिर आप अपने ऐप के कोड में तर्क जोड़ देंगे कि आपके ऐप को उस पैरामीटर के मान के आधार पर क्या प्रदर्शित करना चाहिए।

फायरबेस कंसोल में रिमोट कॉन्फिग पैरामीटर और शर्तें सेट करें

  1. फ़ायरबेस कंसोल में, अपना फ़ायरबेस प्रोजेक्ट खोलें।

  2. बाईं ओर के फलक में, एंगेज अनुभाग का विस्तार करें, और फिर रिमोट कॉन्फ़िगरेशन का चयन करें।

  3. कॉन्फ़िगरेशन बनाएं पर क्लिक करें (या यदि आपने पहले रिमोट कॉन्फ़िगरेशन का उपयोग किया है तो पैरामीटर जोड़ें )।

  4. पैरामीटर बनाएं पैनल में, निम्नलिखित चरण पूरे करें:

    1. पैरामीटर नाम फ़ील्ड में, ad_control_switch दर्ज करें।

    2. Data type ड्रॉपडाउन मेनू से, बूलियन चुनें।

    3. नया बनाएं पर क्लिक करें और फिर नई शर्त बनाएं चुनें।

  5. नई शर्त परिभाषित करें संवाद में, निम्नलिखित चरणों को पूरा करें:

    1. नाम फ़ील्ड में, Purchasers Group (या शर्त के लिए कोई अन्य आसानी से पहचाना जाने वाला नाम) दर्ज करें।

    2. लागू होता है... ड्रॉपडाउन मेनू से, उपयोगकर्ता ऑडियंस का चयन करें।

    3. ऑडियंस चुनें ड्रॉपडाउन मेनू से, खरीदार चुनें।

    4. स्थिति सहेजें पर क्लिक करें.

  6. पैरामीटर बनाएं पैनल में वापस, निम्नलिखित चरण पूरे करें:

    1. क्रेता समूह के मूल्य के लिए, गलत का चयन करें।

    2. डिफ़ॉल्ट मान के लिए, सत्य का चयन करें।

  7. सहेजें पर क्लिक करें और फिर परिवर्तन प्रकाशित करें पर क्लिक करें।

यह कॉन्फ़िगरेशन जाँच करेगा कि क्या उपयोगकर्ता "खरीदार" दर्शकों में है (अर्थात, वे भुगतान करने वाले उपयोगकर्ता हैं):

  • यदि उपयोगकर्ता "खरीदार" दर्शकों में है, तो रिमोट कॉन्फिग ad_control_switch पैरामीटर के लिए false मान लौटाएगा।

  • यदि उपयोगकर्ता "खरीदार" दर्शकों में नहीं है, तो रिमोट कॉन्फिग ad_control_switch पैरामीटर के लिए true मान लौटाएगा।

निम्नलिखित चरणों में, आप इन पैरामीटर मानों को संभालने के लिए अपने ऐप में रिमोट कॉन्फ़िगरेशन लागू करेंगे।

अपने ऐप में रिमोट कॉन्फिग एसडीके जोड़ें

अपने एप्लिकेशन कोड में रिमोट कॉन्फिग का उपयोग करने से पहले, अपने ऐप के कोडबेस में रिमोट कॉन्फिग एसडीके जोड़ें। ध्यान दें कि आपके ऐप में इस ट्यूटोरियल के पिछले चरणों से पहले से ही Google मोबाइल विज्ञापन (AdMob) SDK और Firebase SDK के लिए Google Analytics होना चाहिए।

तीव्र

अपने पॉडफ़ाइल में रिमोट कॉन्फ़िग पॉड जोड़ें और इंस्टॉल करें:

pod 'Firebase/RemoteConfig'

एंड्रॉयड

अपनी build.gradle फ़ाइल में रिमोट कॉन्फ़िग लाइब्रेरी निर्भरता जोड़ें:

implementation 'com.google.firebase:firebase-config:21.6.3'

स्पंदन

अपने फ़्लटर प्रोजेक्ट के रूट से, रिमोट कॉन्फ़िग प्लगइन स्थापित करने के लिए निम्न कमांड चलाएँ:

flutter pub add firebase_remote_config

एकता

नवीनतम फायरबेस यूनिटी एसडीके डाउनलोड और इंस्टॉल करें, और फिर अपने प्रोजेक्ट में रिमोट कॉन्फिग पैकेज जोड़ें:
FirebaseRemoteConfig.unitypackage

रिमोट कॉन्फिग इंस्टेंस कॉन्फ़िगर करें

ताकि आपका ऐप रिमोट कॉन्फिग पैरामीटर मानों का उपयोग कर सके, रिमोट कॉन्फिग इंस्टेंस को कॉन्फ़िगर करें ताकि यह क्लाइंट ऐप इंस्टेंस के लिए नए मान ला सके।

इस उदाहरण में, रिमोट कॉन्फिग को हर घंटे में एक बार नए पैरामीटर मानों की जांच करने के लिए कॉन्फ़िगर किया गया है।

तीव्र

remoteConfig = RemoteConfig.remoteConfig()
let settings = RemoteConfigSettings()
settings.minimumFetchInterval = 3600
remoteConfig.configSettings = settings

Kotlin+KTX

remoteConfig = Firebase.remoteConfig
val configSettings = remoteConfigSettings {
    minimumFetchIntervalInSeconds = 3600
}
remoteConfig.setConfigSettingsAsync(configSettings)

Java

mFirebaseRemoteConfig = FirebaseRemoteConfig.getInstance();
FirebaseRemoteConfigSettings configSettings = new FirebaseRemoteConfigSettings.Builder()
        .setMinimumFetchIntervalInSeconds(3600)
        .build();
mFirebaseRemoteConfig.setConfigSettingsAsync(configSettings);

स्पंदन

remoteConfig = FirebaseRemoteConfig.instance;
  final configSettings = FirebaseRemoteConfigSettings(
    minimumFetchInterval: Duration(hours: 1),
  );
  await remoteConfig.setConfigSettings(configSettings);

  // Use the `onConfigUpdated` callback to listen for changes to the config settings.
  remoteConfig.onConfigUpdated.listen((_) {
    print('Config settings confirmed');
  });

एकता

var remoteConfig = FirebaseRemoteConfig.DefaultInstance;
var configSettings = new ConfigSettings {
  MinimumFetchInternalInMilliseconds =
        (ulong)(new TimeSpan(1, 0, 0).TotalMilliseconds)
};
remoteConfig.SetConfigSettingsAsync(configSettings)
        .ContinueWithOnMainThread(task => {
          Debug.Log("Config settings confirmed");
}

रिमोट कॉन्फ़िगरेशन प्राप्त करें और सक्रिय करें

रिमोट कॉन्फिग पैरामीटर को प्राप्त करें और सक्रिय करें ताकि यह नए पैरामीटर मानों का उपयोग शुरू कर सके।

आप इस कॉल को अपने ऐप के लोडिंग चरण में जितनी जल्दी हो सके करना चाहते हैं क्योंकि यह कॉल एसिंक्रोनस है और आपको रिमोट कॉन्फिग वैल्यू पहले से प्राप्त करने की आवश्यकता है ताकि आपका ऐप जान सके कि विज्ञापन दिखाना है या नहीं।

तीव्र

remoteConfig.fetch() { (status, error) -> Void in
  if status == .success {
    print("Config fetched!")
    self.remoteConfig.activate() { (changed, error) in
      // ...
    }
  } else {
    print("Config not fetched")
    print("Error: \(error?.localizedDescription ?? "No error available.")")
  }
  self.loadAdUnit()
}

Kotlin+KTX

remoteConfig.fetchAndActivate()
        .addOnCompleteListener(this) { task ->
            if (task.isSuccessful) {
                val updated = task.result
                Log.d(TAG, "Config params updated: $updated")
            } else {
                Log.d(TAG, "Config params failed to update")
            }
            loadAdUnit()
        }

Java

mFirebaseRemoteConfig.fetchAndActivate()
        .addOnCompleteListener(this, new OnCompleteListener<Boolean>() {
            @Override
            public void onComplete(@NonNull Task<Boolean> task) {
                if (task.isSuccessful()) {
                    boolean updated = task.getResult();
                    Log.d(TAG, "Config params updated: " + updated);
                } else {
                    Log.d(TAG, "Config params failed to update");
                }
                loadAdUnit();
            }
        });

स्पंदन

remoteConfig = FirebaseRemoteConfig.instance;

// Fetch and activate the latest Remote Config values.
final updated = await remoteConfig.fetchAndActivate();

// Check if the config params were updated successfully.
if (updated) {
  print('Config params updated');
} else {
  print('Config params failed to update');
}

// Load the ad unit.
_loadAdUnit();

एकता

remoteConfig.FetchAndActivateAsync().ContinueWithOnMainThread(task => {
  if (task.IsFaulted) {
    Debug.LogWarning("Config params failed to update");
  } else {
    Debug.Log("Config params updated: " + task.Result);
  }
  LoadAdUnit();
});

आपका ऐप अब आपके द्वारा इस चरण में पहले बनाए गए रिमोट कॉन्फ़िगरेशन पैरामीटर को संभालने के लिए कॉन्फ़िगर किया गया है।

रिमोट कॉन्फिग पैरामीटर मान का उपयोग करें

यह निर्धारित करने के लिए कि ऐप इंस्टेंस को निम्न में से कोई एक कार्य करना चाहिए या नहीं loadAdUnit() फ़ंक्शन में पूर्व-प्राप्त रिमोट कॉन्फ़िगरेशन मान का उपयोग करें:

  • ad_control_switch पैरामीटर मान true पर हल हो जाता है: अंतरालीय विज्ञापन दिखाएं (क्योंकि उपयोगकर्ता एक भुगतान न करने वाला उपयोगकर्ता है)।

  • ad_control_switch पैरामीटर मान false हो जाता है: विज्ञापन न दिखाएं (क्योंकि उपयोगकर्ता भुगतान करने वाला उपयोगकर्ता है)।

तीव्र

private func loadAdUnit() {
  let showAds = remoteConfig["ad_control_switch"].boolValue

  if showAds {
    // Load interstitial ad (implemented ad unit)
    // per AdMob instructions (the first step of this tutorial).
  } else {
    // Don't show ads.
  }
}

Kotlin+KTX

private fun loadAdUnit() {
  var showAds = remoteConfig.getBoolean(ad_control_switch)

  if (showAds) {
      // Load interstitial ad (implemented ad unit)
      // per AdMob instructions (the first step of this tutorial).
    } else {
      // Don't show ads.
    }
}

Java

private void loadAdUnit() {
    boolean showAds =
      mFirebaseRemoteConfig.getBoolean(ad_control_switch);

    if (showAds) {
      // Load interstitial ad (implemented ad unit)
      // per AdMob instructions (the first step of this tutorial).
    } else {
      // Don't show ads.
    }
}

स्पंदन

void _loadAdUnit() {
  bool showAds = remoteConfig.getBool(ad_control_switch);

  if (showAds) {
    // Load interstitial ad (implemented ad unit)
    // per AdMob instructions (the first step of this tutorial).
  } else {
    // Don't show ads.
  }
}

एकता

void LoadAdUnit() {
  bool showAds =
      remoteConfig.GetValue("ad_control_switch").BooleanValue;

  if (showAds) {
    // Load interstitial ad (implemented ad unit)
    // per AdMob instructions (the first step of this tutorial).
  } else {
    // Don't show ads.
  }
}

अपना ऐप जारी करें

चूँकि विज्ञापन दिखाने या न दिखाने का तर्क आपके कोडबेस में है, इसलिए आपको अपने ऐप का एक नया संस्करण जारी करना होगा जिसमें यह तर्क शामिल हो।

यदि आपने इस ट्यूटोरियल के चरणों का पालन किया है, तो आपका ऐप तुरंत आपके उपयोगकर्ताओं को एक अनुकूलित इन-ऐप विज्ञापन अनुभव प्रदान करना शुरू कर देगा। आप अपने AdMob खाते और Google Analytics डैशबोर्ड (या तो Firebase कंसोल या Google Analytics UI) दोनों में अपने विज्ञापन राजस्व की निगरानी कर सकते हैं।


और बस! आपने AdMob, Google Analytics और Firebase का उपयोग करके हाइब्रिड मुद्रीकरण को अनुकूलित करने का ट्यूटोरियल पूरा कर लिया है।




चरण 2: Google Analytics सेट करें