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

1. परिचय

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

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

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

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

आपको क्या सीखने को मिलेगा

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

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

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

AdMob इस्तेमाल करने के अपने अनुभव को आप क्या रेटिंग देंगे?

शुरुआती सामान्य एडवांस

Firebase इस्तेमाल करने के अपने अनुभव को आप क्या रेटिंग देंगे?

शुरुआती सामान्य एडवांस

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

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

इस कोडलैब के लिए, पूरा कोड डाउनलोड करने के लिए, इस बटन पर क्लिक करें:

डाउनलोड की गई ज़िप फ़ाइल को अनपैक करें. इससे 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-complete — 102 कोडलैब के लिए पूरा किया गया कोड.

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

Awesome Drawing Quiz में कई ओपन-सोर्स कोड का इस्तेमाल किया जाता है. प्रोजेक्ट को कंपाइल और चलाने के लिए, इन कोड का इस्तेमाल करना ज़रूरी है.

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

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

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

अब आपके पास Unity में प्रोजेक्ट खुला होना चाहिए.

Google Mobile Ads Unity प्लगिन जोड़ना

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

  1. Google Mobile Ads Unity Plugin 3.18.1 पैकेज डाउनलोड करें. (ध्यान दें कि यह कोडलैब, प्लगिन के दूसरे वर्शन के साथ काम नहीं कर सकता)
  2. Awesome Drawing Quiz Unity प्रोजेक्ट में. प्रोजेक्ट में, Assets > Import Package > Custom Package पर जाएं.
  3. डाउनलोड किए गए प्रोजेक्ट में, GoogleMobileAds.unitypackage को इंपोर्ट करें.

आपको AdMob ऐप्लिकेशन आईडी भी सेट करना होगा. Unity एडिटर में, मेन्यू से Assets > Google Mobile Ads > Settings चुनें.

44fc84fe88235c1f.png

Google AdMob सेक्शन में जाकर, चालू है चेकबॉक्स पर क्लिक करके AdMob को चालू करें. इसके बाद, AdMob ऐप्लिकेशन आईडी इस तरह डालें:

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

a6ad7402d4daf330.png

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

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

704aa8e97df63c4e.png

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

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

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

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

e0a028059c9e00cb.png

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

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

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

फ़नल बनाना

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

  1. Firebase कंसोल पर जाएं और पहले से बनाया गया Awesome Drawing Quiz प्रोजेक्ट चुनें.
  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_success इवेंट ट्रिगर हुआ).

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

5. ऐप्लिकेशन में Remote Config को इंटिग्रेट करना

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

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

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

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

  1. Firebase Unity SDK 5.5.0 डाउनलोड करें और उसे किसी सुविधाजनक जगह पर अनज़िप करें.
  2. Awesome Drawing Quiz Unity प्रोजेक्ट खोलें. इसके बाद, Assets > Import Package > Custom Package पर जाएं.
  3. अनज़िप किए गए एसडीके से, Remote Config SDK (dotnet4/FirebaseRemoteConfig.unitypackage) इंपोर्ट करें.
  4. 'Import Unity package' विंडो में, Import पर क्लिक करें.

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

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

Scenes/Main.cs

...

using AwesomeDrawingQuiz.Game;

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

namespace AwesomeDrawingQuiz.Scene {
    ...
}

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

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

Scenes/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))

फ़ेच की गई Remote Config वैल्यू चालू करना

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

Scenes/Main.cs

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

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

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

Scenes/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 कंसोल पर जाएं. इसके बाद, Awesome Drawing Quiz प्रोजेक्ट चुनें, जिसे आपने पहले बनाया था. रिमोट कॉन्फ़िगरेशन -> अपना पहला पैरामीटर जोड़ें बटन पर क्लिक करें.

7f52617141c53726.png

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

cbc771fd1685b29c.png

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

d6a6aa4a60e06ee9.png

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

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

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

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

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

9a9bd8a26a39bfe3.png

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

d6a6aa4a60e06ee9.png

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

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

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

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

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

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

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

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

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

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

इस कोडलैब में, आपको इनाम की रकम को ऑप्टिमाइज़ करने के लिए एक एक्सपेरिमेंट बनाना है. इससे Awesome Drawing Quiz में रोज़ाना उपयोगकर्ता की दिलचस्पी को बढ़ाया जा सकेगा.

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

Firebase कंसोल में जाकर, Awesome Drawing Quiz प्रोजेक्ट खोलें. A/B टेस्टिंग मेन्यू चुनें. इसके बाद, एक्सपेरिमेंट बनाएं बटन पर क्लिक करें.

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

f38a85328ab54e7e.png

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

15d552adb61c0b08.png

टारगेटिंग के विकल्पों को कॉन्फ़िगर करें. इस कोडलैब में, आपको Awesome Drawing Quiz के सभी उपयोगकर्ताओं को टारगेट करना है.

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 Codelab पूरा कर लिया है. इस कोडलैब का पूरा कोड, android_studio_folder.png102-complete फ़ोल्डर में देखा जा सकता है.