फायरबेस रिमोट कॉन्फ़िगरेशन के साथ अपने यूनिटी गेम के लिए ए/बी परीक्षण लागू करें

1 परिचय

इस कोडलैब में, आप सीखेंगे कि नमूना गेम के लिए ए/बी परीक्षण का उपयोग करके रिमोट कॉन्फिग प्रयोग कैसे बनाया जाए, मेचाहैम्स्टर: फायरबेस संस्करण के साथ लेवल अप , जिसे आपने फायरबेस रिमोट कॉन्फिग के साथ अपने गेम को इंस्ट्रूमेंट में संशोधित किया था।

रिमोट कॉन्फिग के साथ ए/बी परीक्षण से आप अपने ऐप के यूआई, सुविधाओं या सहभागिता अभियानों में परिवर्तनों को व्यापक दर्शकों तक पहुंचाने से पहले लक्षित दर्शकों पर उनका परीक्षण कर सकते हैं। आप प्रयोग परिणामों का उपयोग इसके लिए भी कर सकते हैं:

  • निर्धारित करें कि कौन से पैरामीटर मान वेरिएंट राजस्व और प्रतिधारण जैसे प्रमुख मीट्रिक में सुधार करते हैं।
  • पता लगाएं कि उपयोगकर्ताओं के कौन से उपसमूह कौन से वेरिएंट पसंद करते हैं।
  • विभिन्न पैरामीटर मान सेट करने के प्रभावों पर अतिरिक्त विश्लेषण करने के लिए प्रयोग डेटा इकट्ठा करें और संग्रहीत करें।

यह ए/बी परीक्षण का सार है: यह आपको रिमोट कॉन्फिग के लिए कोड इंस्ट्रुमेंटेड लेने और प्रयोगों को लॉन्च करने में सक्षम बनाता है जो रिमोट कॉन्फिग शर्तों (Google एनालिटिक्स उपयोगकर्ता गुणों सहित), प्रतिशत रोलआउट, एनालिटिक्स रूपांतरण घटनाओं के आधार पर ग्राहकों को प्राप्त मूल्यों को नियंत्रित करते हैं। और इनमें से कुछ संयोजन.

सबसे पहले, आप एक शर्त लागू करेंगे कि उपयोगकर्ता क्रियाओं के आधार पर उपयोगकर्ता गुणों को सेट करके गेट्स को प्रयोग में शामिल किया जाएगा। फिर, आप एक ए/बी परीक्षण प्रयोग बनाएंगे जो यह निर्धारित करने के लिए Google Analytics उपयोगकर्ता गुणों का उपयोग करता है कि कौन से ग्राहक प्रयोग में शामिल हैं। और, अंततः, आप उस डेटा का उपयोग अपने दर्शकों के बारे में अधिक समझने के लिए करेंगे।

आप क्या सीखेंगे

  • इंस्ट्रुमेंटेड रिमोट कॉन्फ़िगरेशन मानों का उपयोग करके ए/बी परीक्षण कैसे सेट करें
  • ए/बी परीक्षणों में प्रवेश के लिए शर्तों के भाग के रूप में Google Analytics उपयोगकर्ता संपत्तियों का उपयोग कैसे करें

आवश्यक शर्तें

आपको किस चीज़ की ज़रूरत पड़ेगी

  • आईओएस और/या एंड्रॉइड बिल्ड सपोर्ट के साथ यूनिटी 2019.1.0f1 या उच्चतर

2. डिबग मेनू को सक्षम करना

प्रोजेक्ट में एक डिबग मेनू छिपा हुआ है, और इस मेनू तक पहुंचने का बटन गेम में मौजूद है लेकिन वर्तमान में सक्षम नहीं है। मेनमेनू प्रीफ़ैब से इसे एक्सेस करने के लिए आपको बटन को सक्षम करना होगा।

  1. यूनिटी संपादक में, प्रोजेक्ट टैब चुनें, फिर एसेट्स के अंतर्गत, हैम्स्टर > प्रीफ़ैब्स > मेनू का विस्तार करें और मेनमेनू पर क्लिक करें।

The Unity editor Project tab showing\nAssets. Hamster, Prefabs, Menus

  1. प्रीफ़ैब पदानुक्रम में, DebugMenuButton नामक अक्षम उप-ऑब्जेक्ट ढूंढें और इसे इंस्पेक्टर टैब में खोलने के लिए इसे क्लिक करें।

The Unity editor shows the Main Menu,\nwith DebugMenu disabled

  1. इंस्पेक्टर टैब के भीतर, इसे सक्षम करने के लिए DebugMenuButton वाले टेक्स्ट फ़ील्ड के बगल में ऊपरी बाएँ कोने पर स्थित बॉक्स को चेक करें।

The Inspector tab for DebugMenuButton\nwith checkbox

  1. प्रीफ़ैब सहेजें.

यदि आप गेम को संपादक या अपने डिवाइस पर चलाते हैं, तो मेनू अब पहुंच योग्य होना चाहिए।

3. रिमोट कॉन्फिग सबमेनू सक्षम करें

  1. यूनिटी एडिटर में प्रोजेक्ट टैब से, एसेट्स > हैम्स्टर > प्रीफ़ैब्स > मेनू का विस्तार करें और संपादक पदानुक्रम टैब में इसे खोलने के लिए डीबगमेनू ऑब्जेक्ट पर डबल-क्लिक करें।

    DebugMenu item nested under Assets,\nHamster, Prefabs, Menus
  2. पदानुक्रम टैब में, पदानुक्रम का विस्तार करें और DebugMenu > पैनल के अंतर्गत उप-ऑब्जेक्ट पर क्लिक करें, जिस पर रिमोट कॉन्फिग एक्शन लेबल है।

Remote Config Actions nested under\nCanvas, DebugMenu

  1. यूनिटी इंस्पेक्टर टैब में, ऑब्जेक्ट के नाम वाले टेक्स्ट फ़ील्ड के बाईं ओर स्थित बॉक्स को चेक करके रिमोट कॉन्फ़िगरेशन क्रियाओं को सक्षम करें।

Unity editor with Remote Config\nActions enabled under DebugMenu, Panel

इसमें सेट बोर्ड ऑफ सबटाइटल और सेट एन्जॉय सबटाइटल नाम के दो गेमऑब्जेक्ट चिल्ड्रन हैं, जो दोनों DebugMenu.cs में मौजूदा लेकिन लागू न किए गए तरीकों को कॉल करने के लिए कॉन्फ़िगर किए गए हैं।

4. उपशीर्षक ओवरराइड को इन-ऐप डिफ़ॉल्ट पर रीसेट करें

पिछले कोडलैब में, आपने एक पैरामीटर के डिफ़ॉल्ट मान को JSON के रूप में ओवरराइड किया और विभिन्न वेरिएंट पेश करने के लिए शर्तों का उपयोग किया। इस कोडलैब के भाग के रूप में, आप अपने द्वारा बनाई गई स्थिति को हटा देंगे और इन-ऐप डिफ़ॉल्ट को फिर से प्रस्तुत करेंगे, और आप इसे केवल ए/बी परीक्षण के परिणाम के साथ ओवरराइड करेंगे।

इन-ऐप डिफ़ॉल्ट को पुनः सक्षम करने के लिए:

  1. फायरबेस कंसोल में रिमोट कॉन्फिग पेज खोलें और एडिट पैरामीटर साइड पैनल खोलने के लिए subtitle_override पैरामीटर के बगल में पेंसिल आइकन पर क्लिक करें।
  2. शर्त को हटाने के लिए उसके बगल में स्थित X आइकन पर क्लिक करें।
  3. शेष डिफ़ॉल्ट मान के आगे, इन-ऐप डिफ़ॉल्ट का उपयोग करें टॉगल सक्षम करें।

Deleting a condition from the Remote\nConfig parameter editor

  1. अपने परिवर्तनों को सहेजने के लिए सहेजें पर क्लिक करें, फिर अपने परिवर्तनों को प्रकाशित करने के लिए परिवर्तन प्रकाशित करें पर क्लिक करें। Publish\nchanges option on the Remote Config page

5. डिबग फ़ंक्शन में उपयोगकर्ता गुण सेट करें

अब आप DebugMenu.cs में कुछ पूर्व-कॉन्फ़िगर लेकिन लागू न किए गए Google Analytics फ़ंक्शंस के लिए फ़ंक्शन बॉडी लिखेंगे (जो एसेट्स > हैम्स्टर > स्क्रिप्ट्स > स्टेट्स में पाया जा सकता है)।

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

DebugMenu.cs में SetUserBoredOfSubtitle और SetUserEnjoysSubtitle के मौजूदा संस्करणों को ढूंढकर और उन्हें निम्नानुसार ओवरराइट करके लागू करें:

void SetUserBoredOfSubtitle()
{
  Firebase.Analytics.FirebaseAnalytics.SetUserProperty("subtitle_sentiment", "bored");
}
void SetUserEnjoysSubtitle()
{
  Firebase.Analytics.FirebaseAnalytics.SetUserProperty("subtitle_sentiment", "enjoys");
}

यदि आपका ऐप Google Analytics के साथ सही तरीके से कॉन्फ़िगर किया गया है, तो आप प्रॉपर्टी को रिमोट कॉन्फ़िगरेशन की शर्तों के लिए उपलब्ध कराने के लिए इनमें से किसी एक फ़ंक्शन को कॉल कर सकते हैं। मोबाइल डिवाइस से SetUserBoredOfSubtitle कॉल करने के लिए, गेम शुरू करें और मुख्य मेनू में डीबग मेनू बटन दबाएं, फिर Set Bored of Subtitle दबाएं।

6. एक कस्टम आयाम बनाएं

इसके बाद, आप यह देखने के लिए कि कौन सा उपशीर्षक सबसे अच्छा काम करता है, subtitle_override के लिए विभिन्न उपशीर्षक वेरिएंट सेट अप करेंगे। लेकिन, अपने ए/बी परीक्षण में, आप इन वेरिएंट्स को केवल उन उपयोगकर्ताओं को परोसेंगे जिनकी वर्तमान उपशीर्षक के बारे में भावनाओं (जैसा कि subtitle_sentiment में दर्ज किया गया है) में "ऊब" शब्द शामिल है।

आप Analytics इवेंट पर कस्टम पैरामीटर बनाने और ट्रैक करने के लिए एक कस्टम आयाम का उपयोग करेंगे। अधिक जानकारी के लिए कस्टम आयाम और मेट्रिक्स देखें।

एक नया कस्टम आयाम बनाने के लिए:

  1. फायरबेस कंसोल खोलें, एनालिटिक्स मेनू का विस्तार करें और कस्टम परिभाषाएँ चुनें।
  2. कस्टम परिभाषाएँ पृष्ठ से, कस्टम आयाम बनाएँ पर क्लिक करें।
  3. नई कस्टम आयाम विंडो में, आयाम नाम को "उपशीर्षक भावना" पर सेट करें और, स्कोप ड्रॉप-डाउन से, उपयोगकर्ता का चयन करें।
  4. उपयोगकर्ता संपत्ति फ़ील्ड के लिए, subtitle_sentiment.

7. ए/बी परीक्षण प्रयोग स्थापित करें

इसके बाद, दो से तीन दिन के उपयोगकर्ता प्रतिधारण को अनुकूलित करने के लिए एक दूसरे के विरुद्ध परीक्षण किए जाने subtitle_override के लिए अलग-अलग मान सेट करने के लिए एक ए/बी परीक्षण प्रयोग बनाएं।

  1. सबसे पहले, फायरबेस कंसोल रिमोट कॉन्फिग पेज पर subtitle_override पैरामीटर पर संपादित करें का चयन करें:

The subtitle_override parameter on\nthe Remote Config page, showing the Edit option.

  1. दिखाई देने वाले संपादन पैरामीटर संवाद के भीतर से, नया जोड़ें पर क्लिक करें।

The Add new experiment option on the\nRemote Config Edit parameter page.

  1. दिखाई देने वाली सूची से, प्रयोग चुनें।

Remote Config parameter page: Add new\nexperiment

  1. अपने प्रयोग के लिए एक नाम और विवरण दर्ज करें.

Experiment name and description\nsection

  1. इसके बाद, लक्ष्यीकरण शर्तें चुनें. सबसे पहले, ड्रॉप-डाउन से अपना ऐप चुनें।

The Targeting step of an A/B Testing\nconfiguration, with an app selected

  1. इसके बाद, एक नई शर्त जोड़ने के लिए और पर क्लिक करें, फिर उपयोगकर्ता संपत्ति का चयन करें और subtitle_sentiment चुनें। यदि यह प्रकट नहीं होता है, तो इसे मैन्युअल रूप से दर्ज करें।
  2. चूँकि आप केवल उन लोगों के लिए उपशीर्षक सेट करना चाहते हैं जिनकी वर्तमान उपशीर्षक भावना में "बोर" शामिल है, तो इसमें शामिल चुनें और bored टाइप करें।
  3. वैकल्पिक रूप से, चुनें कि परीक्षण में शामिल होने के लिए दर्शकों का कौन सा प्रतिशत उपरोक्त मानदंडों से मेल खाता है। यादृच्छिकता से बचने के लिए 100% का चयन करें जिसे आप आसानी से नियंत्रित नहीं कर सकते।

A/B Testing Targeting section with\nsubtitle_sentiment selected

  1. इसके बाद, एक लक्ष्य चुनें जिसे परीक्षण अधिकतम करने का प्रयास करेगा। प्रतिधारण चुनें (2-3 दिन)

A/B Testing Goals section

  1. इसके बाद, प्रयोग के पैरामीटर सेट करें और अलग-अलग उपशीर्षक वेरिएंट बनाएं। ये वेरियंट अलग-अलग मान हैं जो ए/बी परीक्षण उन उपयोगकर्ताओं को प्रदान करेगा जिनके subtitle_sentiment में 'उबाऊ' है, और ए/बी परीक्षण यह निर्धारित करेगा कि प्रतिधारण को अधिकतम करने के लिए कौन सा प्रकार सबसे अच्छा है।
  2. वेरिएंट ए के लिए निम्नलिखित पैरामीटर मान दर्ज करें:
    {"text":"A: A game about a mechanical hamster","fontSize":8,"textColor":{"r":0.0,"g":255.0,"b":0.0,"a":255.0}}
    
  3. वेरिएंट बी के लिए निम्नलिखित पैरामीटर मान दर्ज करें:
    {"text":"B: A game about a mechanical hamster","fontSize":14,"textColor":{"r":255.0,"g":0.0,"b":0.0,"a":255.0}}
    
  4. संपूर्ण संख्याओं के साथ भिन्न अनुपात इस प्रकार सेट करें:
    • आधार रेखा : 1
    • वेरिएंट ए : 100
    • वेरिएंट बी : 100
    इसके परिणामस्वरूप बेसलाइन के लिए कुल वेटेज 0.5%, वेरिएंट ए के लिए 49.8% और वेरिएंट बी के लिए 49.8% होगा। Variant weights configuration\nsection ये वेरिएंट निर्दिष्ट करते हैं कि 201 में से एक बार, ए/बी परीक्षण उन लोगों के लिए डिफ़ॉल्ट सेवा प्रदान करता है जो उपशीर्षक से ऊब चुके हैं, लेकिन 200/201 बार, यह दो नए मूल्यों में से एक की सेवा करेगा और शीर्षक स्क्रीन को ओवरराइड करेगा।
  5. प्रयोग प्रारंभ करें पर क्लिक करके सहेजें और सबमिट करें, फिर पुष्टिकरण पॉपअप पर प्रारंभ पर क्लिक करें। Click Start to start the\nexperiment

8. सेट यूजर प्रॉपर्टी विधि चलाएँ और ताज़ा करें

अब आपने उपयोगकर्ता के बारे में विभिन्न गुण सेट कर दिए हैं, जिनका उपयोग आपके गेम के तर्क या प्रस्तुति को निर्देशित करने के लिए किया जा सकता है।

यदि आपने पहले SetUserProperty विधि नहीं चलाई है या इसे enjoys पर सेट किया है, तो आपको गेम खोलते समय अभी भी डिफ़ॉल्ट उपशीर्षक देखना चाहिए।

यदि आपने इसे bored पर सेट किया है (फिर से लाने से पहले), तो आपको लगभग 50/50 अनुपात में नए मूल्यों में से एक देखना चाहिए।

एक बार जब कोई उपकरण ए/बी परीक्षण प्रयोग में शामिल हो जाता है, तो उस प्रयोग से प्राप्त होने वाले मान नहीं बदलेंगे और प्रति इंस्टॉलेशन लगातार बने रहेंगे। परिणामस्वरूप, अन्य प्रयोगात्मक मानों में से एक प्राप्त करने के लिए, आपको गेम को उसी डिवाइस/सिम्युलेटर पर पुनः इंस्टॉल करके या गेम को किसी नए डिवाइस/सिम्युलेटर पर इंस्टॉल करके एक नया इंस्टॉल बनाना होगा।

आपके उपयोगकर्ता आधार पर लॉन्च किए गए वास्तविक ए/बी परीक्षण में, आपको बेसलाइन को अन्य वेरिएंट के समान महत्व देना चाहिए। लेकिन इस मामले में, आप यह प्रमाणित करने के लिए कि प्रयोग काम कर रहा है, बहुत विषम संभावनाएँ निर्दिष्ट करते हैं। यदि (1/201 मामले में), आपको अभी भी डिफ़ॉल्ट मान प्राप्त होता है, तो गेम को अपने डिवाइस/सिम्युलेटर पर पुनः इंस्टॉल करने का प्रयास करें।

इसका एक और प्रभाव यह है कि उपयोगकर्ता संपत्ति को वापस enjoys में बदलने से मूल्य वापस आधार रेखा पर नहीं बदलेगा, लेकिन फिर से, आप enjoys पर स्विच करके और पुनः इंस्टॉल करके ऐसा कर सकते हैं।

9. बधाई हो!

आपने विभिन्न रिमोट कॉन्फिग मानों के साथ प्रयोग करने और यह निर्धारित करने के लिए रिमोट कॉन्फिग ए/बी परीक्षण का उपयोग किया है कि प्रत्येक एनालिटिक्स मेट्रिक्स को कैसे प्रभावित करता है।

हमने क्या कवर किया है

  • इंस्ट्रुमेंटेड रिमोट कॉन्फ़िगरेशन मानों का उपयोग करके ए/बी परीक्षण कैसे सेट करें
  • ए/बी परीक्षण प्रयोगों में प्रवेश के लिए शर्तों के भाग के रूप में Google Analytics उपयोगकर्ता गुणों का उपयोग कैसे करें

अगले कदम

एक बार प्रयोग समाप्त हो जाने पर, आप यह तय करने के लिए अपने प्रोजेक्ट में प्रयोगों की सूची में से एक का चयन कर सकते हैं कि आप इसके साथ क्या करना चाहते हैं। क्या आप किसी एक को "विजेता" चुनना चाहते हैं या अधिक प्रयोग करना चाहते हैं?