ट्यूटोरियल: AdMob, Google Analytics, और Firebase का इस्तेमाल करके, कमाई करने के हाइब्रिड मॉडल को ऑप्टिमाइज़ करें

तीसरा चरण: खास विज्ञापन दिखाने के लिए, Firebase Remote Config सेट अप करना


परिचय: हाइब्रिड तरीके से कमाई करने की सुविधा को ऑप्टिमाइज़ करना AdMob, Google Analytics, और Firebase की मदद से
पहला चरण: विज्ञापन दिखाने के लिए, AdMob का इस्तेमाल करके नई विज्ञापन यूनिट बनाना
दूसरा चरण: सेट अप करें Google Analytics

तीसरा चरण: खास विज्ञापन दिखाने के लिए, Firebase रिमोट कॉन्फ़िगरेशन सेट अप करना Firebase Remote Config


पिछले चरण के आखिर में, आपने Google Analytics की ऑडियंस के बारे में जाना. इस चरण में, Remote Config नाम का एक ऐसा पैरामीटर बनाया जाएगा जिसे बूलियन वैल्यू से कंट्रोल किया जा सकता है. यह पैरामीटर, "खरीदारी करने वाले लोग" वाली ऑडियंस का इस्तेमाल करता है.ad_control_switch इसके बाद, अपने ऐप्लिकेशन के कोड में लॉजिक जोड़ा जाएगा, ताकि यह तय किया जा सके कि पैरामीटर की वैल्यू के आधार पर, आपका ऐप्लिकेशन क्या दिखाएगा.

Firebase कंसोल में, Remote Config पैरामीटर और शर्तें सेट अप करनाFirebase

  1. Firebase कंसोल में, अपना Firebase प्रोजेक्ट खोलें.

  2. बाईं ओर मौजूद पैनल में, उपयोगकर्ता की दिलचस्पी बढ़ाएं सेक्शन को बड़ा करें. इसके बाद, रिमोट कॉन्फ़िगरेशन को चुनें.

  3. कॉन्फ़िगरेशन बनाएं पर क्लिक करें. अगर आपने पहले भी Remote Config का इस्तेमाल किया है, तो पैरामीटर जोड़ें पर क्लिक करें.

  4. पैरामीटर बनाएं पैनल में, यह तरीका अपनाएं:

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

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

    3. **नई शर्त बनाएं** पर क्लिक करें. इसके बाद, **नई शर्त बनाएं** को चुनें.

  5. नई शर्त तय करें डायलॉग में, यह तरीका अपनाएं:

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

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

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

    4. शर्त सेव करें पर क्लिक करें.

  6. पैरामीटर बनाएं पैनल पर वापस जाएं और यह तरीका अपनाएं:

    1. Purchasers Group की वैल्यू के लिए, गलत चुनें.

    2. डिफ़ॉल्ट वैल्यू के लिए, सही चुनें.

  7. सेव करें पर क्लिक करें. इसके बाद, बदलाव पब्लिश करें पर क्लिक करें.

इस कॉन्फ़िगरेशन से यह पता चलेगा कि उपयोगकर्ता "खरीदारी करने वाले लोग" वाली ऑडियंस में शामिल है या नहीं. इसका मतलब है कि वह पैसे चुकाने वाला उपयोगकर्ता है या नहीं:

  • अगर उपयोगकर्ता "खरीदारी करने वाले लोग" वाली ऑडियंस में शामिल है, तो Remote Config पैरामीटर के लिए ad_control_switch की वैल्यू दिखाएगा.false

  • अगर उपयोगकर्ता "खरीदारी करने वाले लोग" वाली ऑडियंस में शामिल नहीं है, तो Remote Config पैरामीटर के लिए ad_control_switch वैल्यू दिखाएगा.true

अगले चरणों में, इन पैरामीटर वैल्यू को मैनेज करने के लिए, अपने ऐप्लिकेशन में Remote Config को लागू किया जाएगा.

अपने ऐप्लिकेशन में, Remote Config SDK टूल जोड़ना

अपने ऐप्लिकेशन कोड में Remote Config का इस्तेमाल करने से पहले, अपने ऐप्लिकेशन के कोडबेस में Remote Config SDK टूल जोड़ें. ध्यान दें कि इस ट्यूटोरियल के पिछले चरणों में, आपके ऐप्लिकेशन में Google Mobile Ads (AdMob) SDK टूल और Firebase के लिए Google Analytics SDK टूल पहले से ही मौजूद होना चाहिए.

Swift

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

pod 'Firebase/RemoteConfig'

Android

अपनी build.gradle फ़ाइल में, Remote Config लाइब्रेरी डिपेंडेंसी जोड़ें:

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

Flutter

रिमोट कॉन्फ़िगरेशन प्लगिन इंस्टॉल करने के लिए, अपने Flutter प्रोजेक्ट के रूट से यह कमांड चलाएं:Remote Config

flutter pub add firebase_remote_config

Unity

Firebase यूनिटी SDK का नया वर्शन डाउनलोड और इंस्टॉल करें. इसके बाद, अपने प्रोजेक्ट में Remote Config पैकेज जोड़ें:
FirebaseRemoteConfig.unitypackage

इंस्टेंस कॉन्फ़िगर करें Remote Config

अपने ऐप्लिकेशन को Remote Config पैरामीटर वैल्यू का इस्तेमाल करने की अनुमति देने के लिए, Remote Config इंस्टेंस को कॉन्फ़िगर करें, ताकि वह क्लाइंट ऐप्लिकेशन इंस्टेंस के लिए नई वैल्यू फ़ेच कर सके.

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

Swift

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

Kotlin

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);

Flutter

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');
  });

Unity

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");
}

फ़ेच और चालू करना Remote Config

Remote Config पैरामीटर फ़ेच करें और उसे चालू करें, ताकि वह नई पैरामीटर वैल्यू इस्तेमाल कर सके.

आपको अपने ऐप्लिकेशन में इस कॉल को जल्द से जल्द लागू करना चाहिए क्योंकि यह एसिंक्रोनस तरीके से काम करती है. साथ ही, आपके पास Remote Config वैल्यू पहले से ही फ़ेच होनी चाहिए, ताकि आपके ऐप्लिकेशन को यह पता चल सके कि विज्ञापन दिखाना है या नहीं.

Swift

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

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();
            }
        });

Flutter

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();

Unity

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

आपका ऐप्लिकेशन अब उस Remote Config पैरामीटर को मैनेज करने के लिए कॉन्फ़िगर हो गया है जिसे आपने इस चरण में पहले बनाया था.

Remote Config पैरामीटर वैल्यू का इस्तेमाल करना

`loadAdUnit()` फ़ंक्शन में, पहले से फ़ेच की गई `Remote Config` वैल्यू का इस्तेमाल करके यह तय करें कि ऐप्लिकेशन इंस्टेंस को इनमें से क्या करना चाहिए:

  • ad_control_switch पैरामीटर की वैल्यू true है: इंटरस्टीशियल विज्ञापन दिखाएं, क्योंकि उपयोगकर्ता पैसे चुकाने वाला उपयोगकर्ता नहीं है.

  • ad_control_switch पैरामीटर की वैल्यू false है: विज्ञापन न दिखाएं, क्योंकि उपयोगकर्ता पैसे चुकाने वाला उपयोगकर्ता है.

Swift

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

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.
    }
}

Flutter

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.
  }
}

Unity

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 यूज़र इंटरफ़ेस (यूआई) में) में, विज्ञापनों से होने वाली आय की निगरानी की जा सकती है.


बस इतना ही! आपने AdMob, Google Analytics, और Firebase की मदद से, हाइब्रिड तरीके से कमाई करने की सुविधा को ऑप्टिमाइज़ करने से जुड़ा ट्यूटोरियल पूरा कर लिया है.AdMob




दूसरा चरण: Google Analytics सेट अप करना