AdMob+Firebase 102 Unity: ऐप्लिकेशन अपडेट किए बिना ऐप्लिकेशन के काम करने के तरीके को बेहतर बनाएं

1. परिचय

मान लें कि आपको Play Store पर अपना ऐप्लिकेशन पब्लिश करने के बाद, अपने ऐप्लिकेशन में कुछ पैरामीटर की वैल्यू में बदलाव करना होगा. आम तौर पर, आपको अपने ऐप्लिकेशन के नए वर्शन को फिर से पब्लिश करना चाहिए और उपयोगकर्ताओं को अपने फ़ोन पर ऐप्लिकेशन को अपडेट करना चाहिए.

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

इन मामलों में, ऐप्लिकेशन का अपडेट ठीक से काम नहीं करेगा. क्योंकि उपयोगकर्ताओं के लिए पूरी तरह से अपडेट लागू होने में कुछ समय लगता है. साथ ही, ऐप्लिकेशन के कई वर्शन पर एक्सपेरिमेंट चलाना मुश्किल होता है.

साथ ही, यह कैसे पता किया जा सकता है कि ऐप्लिकेशन में उपयोगकर्ता के अनुभव की जानकारी उम्मीद के मुताबिक काम कर रही है या नहीं? Play Console में उपयोगकर्ताओं की टिप्पणियों पर भरोसा किया जा सकता है. हालांकि, ऐसा हो सकता है कि इस बारे में सटीक फ़ैसला न लिया जा सके.

आपको इनके बारे में जानकारी मिलेगी

  • 'Firebase के लिए Google Analytics' में फ़नल बनाने का तरीका
  • Firebase रिमोट कॉन्फ़िगरेशन को इस्तेमाल करने का तरीका
  • Firebase A/B टेस्टिंग को चलाने का तरीका

आपको इन चीज़ों की ज़रूरत होगी

  • Unity 2018.4.4f1 या इसके बाद का वर्शन
  • Xcode 10 या उसके बाद का वर्शन (iOS का टारगेट बनाने के लिए)
  • Google खाता
  • अपने डिवाइस को कनेक्ट करने के लिए, यूएसबी केबल के साथ Android 5.0 या इसके बाद के वर्शन वाले टेस्ट डिवाइस या एवीडी(Android वर्चुअल डिवाइस) पर चलने वाला Android एम्युलेटर, जिसकी सिस्टम इमेज Play Store/Google API के साथ काम करती हो
  • iOS डिवाइस या iOS 8.0 या इसके बाद के वर्शन पर चलने वाला सिम्युलेटर

AdMob के साथ आपका अनुभव कैसा रहा?

शुरुआती इंटरमीडिएट कुशल

Firebase के साथ अपने अनुभव के स्तर को आप कितनी रेटिंग देंगे?

शुरुआती इंटरमीडिएट कुशल

2. डेवलपमेंट एनवायरमेंट सेटअप करें

कोड डाउनलोड करना

इस कोडलैब के लिए सभी कोड डाउनलोड करने के लिए, नीचे दिया गया बटन क्लिक करें:

डाउनलोड की गई ZIP फ़ाइल को अनपैक करें. इससे admob-firebase-codelabs-unity-master नाम का रूट फ़ोल्डर खुल जाएगा.

...या कमांड लाइन से, GitHub रिपॉज़िटरी का क्लोन बनाएं.

$ git clone https://github.com/googlecodelabs/admob-firebase-codelabs-unity

डेटा स्टोर करने की जगह में चार फ़ोल्डर इस तरह से शामिल होते हैं:

  • android_studio_folder.png101-base — इस कोडलैब में बनाया जाने वाला शुरुआती कोड.
  • android_studio_folder.png101-complete_and_102-base — इस कोडलैब के लिए पूरा कोड और 102 कोडलैब के लिए एक स्टार्टर.
  • android_studio_folder.png102 पूरा हो गया है — 102 कोडलैब के लिए कोड पूरा हो गया है.

ज़रूरी फ़ाइलें तैयार करना

बेहतरीन ड्रॉइंग क्विज़ में कई ओपन-सोर्स कोड इस्तेमाल किए जाते हैं, जो प्रोजेक्ट को कंपाइल और चलाने के लिए ज़रूरी होते हैं.

टर्मिनल खोलें और रिपॉज़िटरी की रूट डायरेक्ट्री पर जाएं. इसके बाद, प्रोजेक्ट में ज़रूरी फ़ाइलों को कॉपी करने के लिए, टर्मिनल से ./gradlew :prepareThirdPartyFiles (Windows पर gradlew.bat :prepareThirdPartyFiles) चलाएं.

स्टार्टर ऐप्लिकेशन को इंपोर्ट करें

Unity को लॉन्च करें और वेलकम स्क्रीन में "खोलें" को चुनें. इसके बाद, डाउनलोड किए गए कोड से 101-complete_and_102-base डायरेक्ट्री चुनें.

अब आपका प्रोजेक्ट Unity में खुल जाएगा.

Google मोबाइल विज्ञापन Unity प्लगिन जोड़ें

Unity ऐप्लिकेशन पर AdMob विज्ञापन दिखाने के लिए, आपको प्रोजेक्ट में Google Mobile Ads Unity प्लगिन जोड़ना होगा.

  1. Google Mobile Ads Unity प्लगिन 3.18.1 पैकेज डाउनलोड करें. (ध्यान दें कि शायद यह कोडलैब, प्लगिन के किसी दूसरे वर्शन के साथ काम न करे)
  2. बेहतरीन ड्रॉइंग क्विज़ Unity प्रोजेक्ट में. प्रोजेक्ट में, ऐसेट > पैकेज इंपोर्ट करें > पसंद के मुताबिक पैकेज.
  3. डाउनलोड किए गए प्रोजेक्ट में GoogleMobileAds.unitypackage इंपोर्ट करें.

आपको AdMob ऐप्लिकेशन का आईडी भी सेट करना होगा. Unity एडिटर में, ऐसेट > Google मोबाइल विज्ञापन > सेटिंग पर क्लिक करें.

44fc84fe88235c1f.png

Google AdMob सेक्शन में चालू किया गया चेकबॉक्स पर क्लिक करके, AdMob को चालू करें. फिर, नीचे बताए गए तरीके से AdMob ऐप्लिकेशन का आईडी डालें:

  • Android: ca-app-pub-3940256099942544~3048611032
  • iOS: ca-app-pub-3940256099942544~2753522596

a6ad7402d4daf330.png

Unity प्रोजेक्ट में Firebase कॉन्फ़िगरेशन फ़ाइलें जोड़ना

  1. बेहतरीन ड्रॉइंग क्विज़ प्रोजेक्ट की खास जानकारी वाली स्क्रीन पर, सेटिंग आइकॉन पर क्लिक करें. 9bacb5ada7cbaaf6.png
  2. General टैब में, google-service.json (Android के लिए) और GoogleService-Info.plist (iOS के लिए) फ़ाइल डाउनलोड करने के लिए हर Android और iOS ऐप्लिकेशन को चुनें.
  3. दोनों कॉन्फ़िगरेशन फ़ाइलों को Unity प्रोजेक्ट के android_studio_folder.pngऐसेट फ़ोल्डर में ले जाएं.

704aa8e97df63c4e.png

Firebase Analytics SDK टूल जोड़ना

  1. Firebase Unity SDK 5.5.0 डाउनलोड करें और इसे किसी सुविधाजनक जगह पर अनज़िप करें. (अगर आपने SDK टूल पहले ही डाउनलोड कर लिया है, तो यह चरण छोड़ दें)
  2. बेहतरीन ड्रॉइंग क्विज़ Unity प्रोजेक्ट खोलें, ऐसेट > पैकेज इंपोर्ट करें > पसंद के मुताबिक पैकेज.
  3. अनज़िप किए गए SDK टूल से, Firebase Analytics SDK टूल (dotnet4/FirebaseAnalytics.unitypackage) इंपोर्ट करें.
  4. Unity पैकेज विंडो को इंपोर्ट करें में, इंपोर्ट करें पर क्लिक करें.

3. कंसोल से Firebase प्रोजेक्ट खोलना

अगले चरण पर जाने से पहले, Firebase कंसोल से वह प्रोजेक्ट खोलें जिसे आपने AdMob+Firebase 101 कोडलैब के ‘Firebase प्रोजेक्ट सेट अप करें' चरण में बनाया है.

e0a028059c9e00cb.png

4. ऐप्लिकेशन इवेंट का फ़नल बनाना

ऐसा हो सकता है कि आपने ऐप्लिकेशन में उपयोगकर्ता गतिविधि को ट्रैक करने के लिए कुछ ऐप्लिकेशन इवेंट जोड़े हों. हर ऐप्लिकेशन इवेंट की रिपोर्ट पढ़कर, आपको उस इवेंट से जुड़ी जानकारी मिल सकती है. जैसे, कुल संख्या, हर उपयोगकर्ता की औसत संख्या, डेमोग्राफ़िक्स (उम्र, लिंग, आय, शिक्षा वगैरह) वगैरह.

हालांकि, अगर आपको किसी खास इवेंट पर फ़ोकस करने के बजाय, इवेंट की सीरीज़ के पूरा होने की दर देखनी है, तो क्या होगा? 'Firebase के लिए Google Analytics' में, फ़नल का इस्तेमाल करके ऐप्लिकेशन इवेंट की सीरीज़ के पूरा होने की दर को विज़ुअलाइज़ और ऑप्टिमाइज़ किया जा सकता है.

फ़नल बनाना

फ़नल बनाने के लिए:

  1. Firebase कंसोल पर जाएं और वह बेहतरीन ड्रॉइंग क्विज़ प्रोजेक्ट चुनें जिसे आपने पहले बनाया था.
  2. फ़नल पर क्लिक करें.
  3. नया फ़नल पर क्लिक करें.
  4. फ़नल के लिए एक नाम और विवरण दर्ज़ करें.
  5. पहले दो इवेंट चुनें जिन्हें आप फ़नल में चरण के रूप में उपयोग करना चाहते हैं.
  6. हर अतिरिक्त चरण के लिए किसी अन्य इवेंट को जोड़ें पर क्लिक करें और एक इवेंट चुनें।
  7. बनाएं पर क्लिक करें.

ऊपर दिया गया तरीका अपनाकर, ये फ़नल बनाएं:

#1 फ़नल का नाम: लेवल की सफलता की दर इवेंट: level_start, level_successd3bc78ef61a261d7.png

#2 फ़नल का नाम: इनाम वाले विज्ञापन पूरा होने की दर इवेंट: ad_reward_prompt, ad_reward_impression, ad_reward45c9542dfa663014.png

#3 फ़नल का नाम: गेम पूरा होने की दर इवेंट: game_start, game_completedab25e8501746d5f.png

फ़नल विश्लेषण देखना

कुछ फ़नल बनाने के बाद, आप Firebase कंसोल में फ़नल मेन्यू में जाकर, उन्हें ऐक्सेस कर सकते हैं. सूची में मौजूद फ़नल के नाम पर क्लिक करके, हर फ़नल का पूरा विश्लेषण देखा जा सकता है.

620c0e84587c8ad4.png

उदाहरण के लिए, लेवल की सफलता की दर पर क्लिक करें. इसमें फ़नल की जानकारी इस तरह दिखेगी:

c889f9b6ece15847.png

ऊपर दिए गए स्क्रीनशॉट में, आपको उन उपयोगकर्ताओं का प्रतिशत दिखेगा जिन्होंने लेवल शुरू करने (level_start इवेंट को ट्रिगर करने) के बाद, कोई लेवल पार किया (level_success इवेंट ट्रिगर किया). यहां यह देखा जा सकता है कि 46.2% उपयोगकर्ताओं ने लेवल पार कर लिया है.

इवेंट की संख्या पर क्लिक करने के बाद, इवेंट की संख्या के हिसाब से मेट्रिक इस तरह दिखेंगी:

d044fb7b07e6e0d9.png

ऊपर दिए गए स्क्रीनशॉट में दी गई मेट्रिक के आधार पर, इस अवधि के दौरान 116 बार कोशिश की गई (level_start इवेंट ट्रिगर किया गया) और 57 बार कोशिश की गई (level_सफल इवेंट ट्रिगर किया गया).

इवेंट के पूरा होने की दर(49.1%), उपयोगकर्ता पर आधारित दर(46.2%) से थोड़ी ज़्यादा है. इसलिए, यह कहा जा सकता है कि कुछ ऐसे लोग हैं जो बाकी लोगों से बेहतर परफ़ॉर्म करते हैं.

5. रिमोट कॉन्फ़िगरेशन को ऐप्लिकेशन के साथ इंटिग्रेट करना

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

Firebase में रिमोट कॉन्फ़िगरेशन का इस्तेमाल करके, ऐप्लिकेशन को अपडेट किए बिना ही उन वैल्यू में बदलाव किया जा सकता है. इसका मतलब है कि उपयोगकर्ताओं को परेशान किए बिना, ऐप्लिकेशन के काम करने के तरीके में बदलाव किया जा सकता है. इसके लिए, उपयोगकर्ताओं को अपडेट डाउनलोड करने के लिए कहना होगा.

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

Firebase रिमोट कॉन्फ़िगरेशन SDK टूल जोड़ना

  1. Firebase Unity SDK 5.5.0 डाउनलोड करें और इसे किसी सुविधाजनक जगह पर अनज़िप करें.
  2. बेहतरीन ड्रॉइंग क्विज़ Unity प्रोजेक्ट खोलें, ऐसेट > पैकेज इंपोर्ट करें > पसंद के मुताबिक पैकेज.
  3. ज़िप नहीं किए गए SDK टूल से, रिमोट कॉन्फ़िगरेशन SDK टूल (dotnet4/FirebaseRemoteConfig.unitypackage) इंपोर्ट करें.
  4. Unity पैकेज विंडो को इंपोर्ट करें में, इंपोर्ट करें पर क्लिक करें.

Firebase.RemoteConfig को इंपोर्ट करें

Main.cs में बदलाव करें, ताकि आप पूरी तरह क्वालिफ़ाइड नाम का इस्तेमाल किए बिना, Firebase.remoteConfig से टाइप इस्तेमाल कर सकें.

सीन/Main.cs

...

using AwesomeDrawingQuiz.Game;

// TODO: Import Firebase.RemoteConfig (102)
using Firebase.RemoteConfig;

namespace AwesomeDrawingQuiz.Scene {
    ...
}

शुरू करें और रिमोट कॉन्फ़िगरेशन की वैल्यू फ़ेच करना

रिमोट कॉन्फ़िगरेशन इंस्टेंस को शुरू करने के लिए, Main.cs में InitAndFetchRemoteConfig() तरीके में बदलाव करें. इसके लिए, यह तरीका अपनाएं. ध्यान दें कि रिमोट कॉन्फ़िगरेशन में पैरामीटर का नाम GameSettings.KEY_REWARD_AMOUNT होता है. (जल्द ही इस कोडलैब में इस फ़ील्ड के बारे में बताया जाएगा)

सीन/Main.cs

private Task InitAndFetchRemoteConfig() {
    // TODO: Initialize and Fetch values from the Remote Config (102)
    Dictionary<string, object> defaults = new Dictionary<string, object>();
    defaults.Add(GameSettings.KEY_REWARD_AMOUNT, 1);
    FirebaseRemoteConfig.SetDefaults(defaults);

    if (Debug.isDebugBuild) {
        ConfigSettings config = new ConfigSettings();
        config.IsDeveloperMode = true;
        FirebaseRemoteConfig.Settings = config;
        return FirebaseRemoteConfig.FetchAsync(System.TimeSpan.Zero);
    } else {
        return FirebaseRemoteConfig.FetchAsync();
    }
}

आपको दिखेगा कि FirebaseRemoteConfig इंस्टेंस को, डीबग मोड में सर्वर से नई वैल्यू फ़ेच करने के लिए कॉन्फ़िगर किया गया है. इससे डेवलपमेंट प्रोसेस में मदद मिलती है. (IsDeveloperMode = true और FetchAsync(System.TimeSpan.Zero))

फ़ेच की गई रिमोट कॉन्फ़िगरेशन की वैल्यू चालू करना

रिमोट कॉन्फ़िगरेशन की वैल्यू फ़ेच हो जाने के बाद, आपको उन वैल्यू को ऐप्लिकेशन में उपलब्ध कराने के लिए चालू करना होगा. ActivateRemoteConfigValues() तरीके में नीचे बताए गए तरीके से बदलाव करें.

सीन/Main.cs

private void ActivateRemoteConfigValues() {
    // TODO: Activate fetched Remote Config values (102)
    FirebaseRemoteConfig.ActivateFetched();
}

Start() तरीके में बदलाव करना

ऐप्लिकेशन को फ़ेच करने और ऐप्लिकेशन लॉन्च होने पर, रिमोट कॉन्फ़िगरेशन की वैल्यू को चालू करता है. इसके लिए, Main.cs फ़ाइल में Start() तरीके को इस तरह से बदलें.

सीन/Main.cs

void Start () {
    ...
    Firebase.FirebaseApp.CheckAndFixDependenciesAsync().ContinueWith(task => {
        ...
    }).ContinueWith(task => { 
        // TODO: Call InitAndFetchRemoteConfig() (102)
        InitAndFetchRemoteConfig();
    }).ContinueWith(task => {
        // TODO: Call ActivateRemoteConfigValues() (102)
        ActivateRemoteConfigValues();

        // Enable 'Start a game' button
        UnityMainThreadDispatcher.Instance()
            .Enqueue(() => buttonStartGame.interactable = true);
    });
    #else
    QuizAnalytics.SetScreenName(QuizAnalytics.SCREEN_MAIN);

    // TODO: Call InitAndFetchRemoteConfig() (102)
    InitAndFetchRemoteConfig().ContinueWith(task => {
        // TODO: Call ActivateRemoteConfigValues() (102)
        ActivateRemoteConfigValues();
    });
    #endif
}

रिमोट कॉन्फ़िगरेशन से इनाम की रकम पाना

रिमोट कॉन्फ़िगरेशन से इनाम की रकम फ़ेच करने के लिए, GameSettings क्लास में बदलाव करें.

Game/GameSettings.cs

// TODO: Import Firebase.RemoteConfig (102)
using Firebase.RemoteConfig;

namespace AwesomeDrawingQuiz.Game {
    public class GameSettings {

        ...
        
        // TODO: Apply reward amount from the Remote Config (102)
        public const string KEY_REWARD_AMOUNT = "reward_amount";

        public static GameSettings Instance {
            get {
                return instance;
            }
        }

        ...

        public int RewardAmount {
            get {
                // TODO: Apply reward amount from the Remote Config (102)
                return (int) FirebaseRemoteConfig.GetValue(KEY_REWARD_AMOUNT).LongValue;
            }
            private set { }
        }
    }
}

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

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

नया पैरामीटर बनाने के लिए, Firebase कंसोल पर जाएं. इसके बाद, वह बेहतरीन ड्रॉइंग क्विज़ प्रोजेक्ट चुनें जिसे आपने पहले बनाया है. रिमोट कॉन्फ़िगरेशन -> पर क्लिक करें अपना पहला पैरामीटर जोड़ें बटन.

7f52617141c53726.png

पैरामीटर को reward_amount नाम दें और उसकी डिफ़ॉल्ट वैल्यू को 1 पर सेट करें. इसके बाद, पैरामीटर जोड़ें बटन पर क्लिक करें.

cbc771fd1685b29c.png

बदलावों को उपयोगकर्ताओं के लिए उपलब्ध कराने के लिए, बदलावों को पब्लिश करें बटन पर क्लिक करें.

d6a6aa4a60e06ee9.png

6. रिमोट कॉन्फ़िगरेशन की मदद से ऐप्लिकेशन के काम करने के तरीके में बदलाव करना

बेहतरीन ड्रॉइंग क्विज़ में इनाम की रकम अब Firebase कंसोल पर कॉन्फ़िगर की जा सकती है. इसके लिए, ऐप्लिकेशन कोड अपडेट करने की ज़रूरत नहीं होती.

इस सेक्शन में, इनाम की रकम को एक से बदलकर दो किया जा सकता है. इसका मकसद, इनाम वाला विज्ञापन देखने के बाद, ऐप्लिकेशन में संकेत के तौर पर दो और किरदार दिखाना है.

Rewards_amount पैरामीटर की डिफ़ॉल्ट वैल्यू अपडेट करना

Firebase कंसोल पर जाएं. इसके बाद, वह बेहतरीन ड्रॉइंग क्विज़ प्रोजेक्ट चुनें जिसे आपने पहले बनाया है. रिमोट कॉन्फ़िगरेशन पर क्लिक करें और सूची से reward_amount पर क्लिक करें. इसके बाद, डिफ़ॉल्ट वैल्यू को बदलकर 2 करें. इसके बाद, अपडेट करें बटन पर क्लिक करें.

9a9bd8a26a39bfe3.png

बदलावों को उपयोगकर्ताओं के लिए उपलब्ध कराने के लिए, बदलावों को पब्लिश करें बटन पर क्लिक करें.

d6a6aa4a60e06ee9.png

ऐप्लिकेशन के काम करने के तरीके में हुए बदलाव की पुष्टि करना

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

इनाम वाला विज्ञापन देखने से पहले

इनाम के तौर पर दो अतिरिक्त अक्षर दिखाए गए हैं

7. इनाम की रकम को ऑप्टिमाइज़ करने के लिए एक्सपेरिमेंट बनाएं

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

Firebase A/B टेस्टिंग की मदद से, उपयोगकर्ता के अनुभव को बेहतर बनाने के लिए एक्सपेरिमेंट चलाए जा सकते हैं. इसके लिए, आपको किसी ऐप्लिकेशन को अपडेट करने या हर एक्सपेरिमेंट की परफ़ॉर्मेंस को ट्रैक करने और चलाने के लिए, अलग से कोई टूल बनाने की ज़रूरत नहीं है.

एक्सपेरिमेंट डिज़ाइन करना

कोई नया प्रयोग बनाने से पहले, आपको प्रयोग का एक साफ़ मकसद या लक्ष्य सेट करना होगा. कोई नया एक्सपेरिमेंट बनाने से पहले, यहां दी गई चेकलिस्ट को अच्छी तरह से देखना न भूलें.

  • क्या: आपको क्या ऑप्टिमाइज़ करना है? (उदाहरण के लिए, गेम में कठिनाई का लेवल, विज्ञापन का समय/'किसको दिखे' सेटिंग वगैरह)
  • क्यों: प्रयोग को चलाने के लिए आपके कारोबार का क्या लक्ष्य है? उदाहरण के लिए, विज्ञापन से मिलने वाले रेवेन्यू को बढ़ाने के लिए, उपयोगकर्ताओं को अपने साथ जोड़े रखने के लिए वगैरह
  • कौन: एक्सपेरिमेंट में कौन शामिल हो सकता है? (उदाहरण के लिए, सभी उपयोगकर्ता, खास उपयोगकर्ता ऑडियंस वगैरह)

इस कोडलैब में, इनाम की रकम को ऑप्टिमाइज़ करने के लिए एक प्रयोग बनाया जा रहा है, ताकि बेहतरीन ड्रॉइंग क्विज़ से हर दिन उपयोगकर्ताओं का जुड़ाव बढ़े.

एक्सपेरिमेंट बनाना

Firebase कंसोल से शानदार ड्रॉइंग क्विज़ प्रोजेक्ट खोलें. A/B टेस्टिंग मेन्यू चुनें, फिर एक्सपेरिमेंट बनाएं बटन पर क्लिक करें.

रिमोट कॉन्फ़िगरेशन प्रयोग बनाने के लिए, रिमोट कॉन्फ़िगरेशन चुनें.

f38a85328ab54e7e.png

इस स्क्रीनशॉट में दिखाए गए तरीके से, एक्सपेरिमेंट का नाम 'इनाम की रकम' रखें.

15d552adb61c0b08.png

टारगेटिंग के विकल्प कॉन्फ़िगर करें. इस कोडलैब की मदद से, बेहतरीन ड्रॉइंग क्विज़ के 100% उपयोगकर्ताओं को टारगेट किया जा सकता है.

61b316741a63050f.png

एक्सपेरिमेंट का मुख्य मकसद, उपयोगकर्ता के हर दिन के जुड़ाव को बढ़ाने के लिए एक सही वैल्यू खोजना है. इसलिए, ट्रैक करने के लिए, मुख्य मेट्रिक के तौर पर उपयोगकर्ता का हर दिन का जुड़ाव चुनें.

694641b57d90ff65.png

आखिर में, कंट्रोल और वैरिएंट ग्रुप सेटअप करें, ताकि आप यह पता लगा सकें कि किस ग्रुप की परफ़ॉर्मेंस बेहतर है. कंट्रोल ग्रुप से reward_amount को चुनें और इसकी वैल्यू में कोई बदलाव न करें. वैरिएंट ग्रुप के लिए, इसे ‘कम इनाम' नाम दें. इसके बाद, reward_amount की वैल्यू को बदलकर 1 करें.

10ed7f5b06858519.png

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

समीक्षा करें बटन पर क्लिक करने के बाद, आपको प्रयोग की खास जानकारी इस तरह दिखेगी.

ae6477ce79f6265d.png

एक्सपेरिमेंट चलाएं

प्रयोग चलाने के लिए, प्रयोग शुरू करें बटन पर क्लिक करें. ध्यान दें, प्रयोग शुरू होने के बाद आप उसका कॉन्फ़िगरेशन नहीं बदल सकते.

7131bf9b4fa74fa5.png

8. एक्सपेरिमेंट मैनेज करना

एक्सपेरिमेंट की प्रोग्रेस देखना

Firebase कंसोल में A/B टेस्टिंग मेन्यू में जाकर, प्रयोग की प्रोग्रेस देखी जा सकती है. यह मेन्यू नीचे दिए गए स्क्रीनशॉट की तरह दिखेगा. ध्यान दें कि कार्ड में, पिछले 30 मिनट में एक्सपेरिमेंट में हिस्सा लेने वाले उपयोगकर्ताओं की संख्या भी देखी जा सकती है.

8a7009bdd8871d95.png

सूची में मौजूद एक्सपेरिमेंट पर क्लिक करने के बाद, आपको एक्सपेरिमेंट की जानकारी दिखेगी. जब तक एक्सपेरिमेंट से किसी लीडर (यानी सबसे अच्छा परफ़ॉर्म करने वाला वैरिएंट) का एलान नहीं किया जाता, तब तक आपको 'लीडर का एलान करना बहुत जल्दी है' मैसेज दिखेगा.

a4e7ca3e3f4711cd.png

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

e2d00fc27c053fd3.png

सुधार की खास जानकारी सेक्शन के नीचे मौजूद टेबल में, एक्सपेरिमेंट के लक्ष्य से जुड़ी मेट्रिक की जानकारी देखी जा सकती है. साथ ही, एक्सपेरिमेंट में ट्रैक की जा रही अन्य मेट्रिक भी देखी जा सकती हैं. इस स्क्रीनशॉट में, मेट्रिक की जानकारी वाले सेक्शन का एक उदाहरण दिया गया है.

c3859d642f85cc52.png

सभी उपयोगकर्ताओं को लीडर रोल आउट करें

अगर आपके पास सबसे अच्छा या सबसे अच्छा वैरिएंट है, तो एक्सपेरिमेंट को सभी लोगों के लिए लॉन्च किया जा सकता है. A/B टेस्टिंग को एक सही लीडर मिल जाने के बाद, आपको सभी उपयोगकर्ताओं के लिए सबसे बेहतर वैरिएंट को रोल आउट करने का सुझाव मिलेगा.

86cb6a6c07516634.png

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

एक्सपेरिमेंट की जानकारी वाली स्क्रीन पर, संदर्भ मेन्यू ( 73afe611adf58774.png) पर क्लिक करें. इसके बाद, वैरिएंट को रोल आउट करें पर क्लिक करें.

374e1c72be1d0656.png

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

e176f6e6a72c754.png

यह पुष्टि करने के बाद कि ड्राफ़्ट में कोई समस्या नहीं है, बदलावों को पब्लिश करें बटन पर क्लिक करके, उस बदलाव को सभी उपयोगकर्ताओं के लिए लाइव करें.

d65d545620ce93f6.png

9. सब हो गया!

आपने AdMob+Firebase 102 Unity कोडलैब पूरा कर लिया है. इस कोडलैब के लिए पूरा कोड, android_studio_folder.png102-complete फ़ोल्डर में देखा जा सकता है.