adBreak()

फ़ंक्शन हस्ताक्षर:

adBreak(
   type: '<type>',                     // The type of this placement
   name: '<name>',                     // A descriptive name for this placement
   beforeAd: () => {},                 // Prepare for the ad. Mute and pause the game flow
   afterAd: () => {},                  // Resume the game and re-enable sound
   beforeReward: (showAdFn) => {},     // Show reward prompt (call showAdFn() if clicked)
   adDismissed: () => {},              // Player dismissed the ad before completion
   adViewed: () => {},                 // Ad was viewed and closed
   adBreakDone: (placementInfo) => {}, // Always called (if provided) even if an ad didn't show
);

adBreak() पैरामीटर

नाम टाइप जानकारी
सभी प्लेसमेंट टाइप
type स्ट्रिंग

प्लेसमेंट का टाइप. मान:

  • गेम लोड होने से पहले, 'preroll' से पहले (यूज़र इंटरफ़ेस (यूआई) रेंडर होने से पहले)
  • गेमप्ले शुरू होने से पहले 'start' (यूज़र इंटरफ़ेस (यूआई) रेंडर होने के बाद)
  • 'pause' खिलाड़ी खेल को रोक देता है
  • 'next' खिलाड़ी अगले लेवल पर जाएगा
  • 'browse' प्लेयर, गेमप्ले के बाहर मौजूद विकल्पों को एक्सप्लोर करता है
  • 'reward', इनाम वाला विज्ञापन है
name स्ट्रिंग (ज़रूरी नहीं) आपके गेम में इस खास विज्ञापन प्लेसमेंट का नाम. यह एक अंदरूनी पहचानकर्ता है और इसे प्लेयर को नहीं दिखाया जाता. आने वाली रिलीज़ में, इस आइडेंटिफ़ायर का इस्तेमाल अतिरिक्त रिपोर्टिंग और ऑप्टिमाइज़ेशन सुविधाओं को चालू करने के लिए किया जा सकता है.

हमारा सुझाव है कि आप अपने सभी प्लेसमेंट को नाम दें.
beforeAd फ़ंक्शन (ज़रूरी नहीं) विज्ञापन दिखाए जाने से पहले कॉल किया गया. गेम को आवाज़ को म्यूट और म्यूट करना चाहिए. ये कार्रवाइयां सिंक्रोनस तरीके से की जानी चाहिए. यह कॉलबैक पूरा होने के तुरंत बाद, विज्ञापन दिखाया जाएगा.
afterAd फ़ंक्शन (ज़रूरी नहीं) विज्ञापन खत्म होने के बाद (किसी भी वजह से) कॉल किया जाता है. इनाम वाले विज्ञापनों के लिए, इसे adDismissed या adViewed के बाद कॉल किया जाता है. यह प्लेयर की कार्रवाइयों पर निर्भर करता है. इस फ़ंक्शन का इस्तेमाल गेम फ़्लो को फिर से शुरू करने के लिए किया जाना चाहिए. जैसे, आवाज़ अनम्यूट करने और अगले लेवल पर जाने के लिए इस्तेमाल करें.
adBreakDone फ़ंक्शन (ज़रूरी नहीं) adBreak() में, आखिरी चरण के तौर पर हमेशा कॉल किया जाता है, भले ही कोई विज्ञापन नहीं दिखाया गया हो. फ़ंक्शन, placementInfo ऑब्जेक्ट को इस तरह परिभाषित करता है:
{
    breakType: '<type>',
    breakName: '<name>',
    breakFormat: 'interstitial|reward',
    breakStatus:  'error|noAdPreloaded|...|viewed',
}
प्लेसमेंट की जानकारी वाले ऑब्जेक्ट के बारे में ज़्यादा जानकारी के लिए, adBreakDone और placementInfo() देखें.
केवल इनाम वाले प्लेसमेंट...
beforeReward फ़ंक्शन यह तब कॉल किया जाता है, जब इनाम वाला विज्ञापन उपलब्ध हो. फ़ंक्शन में एक आर्ग्युमेंट showAdFn() होना चाहिए, जिसे इनाम वाले विज्ञापन को दिखाने के लिए कॉल किया जाना चाहिए.
adDismissed फ़ंक्शन सिर्फ़ इनाम वाले विज्ञापनों के लिए तब कॉल किया जाता है, जब खिलाड़ी विज्ञापन को खारिज करता है. इसे सिर्फ़ तब कॉल किया जाता है, जब खिलाड़ी विज्ञापन को पूरा होने से पहले खारिज कर देता है. ऐसी स्थिति में इनाम नहीं दिया जाना चाहिए.
adViewed फ़ंक्शन यह इनाम सिर्फ़ उन इनाम वाले विज्ञापनों के लिए कॉल किया जाता है जिनमें खिलाड़ी विज्ञापन पूरा करता है और उसे इनाम दिया जाना चाहिए.

adBreakDone() and placementInfo

अगर विज्ञापन प्लेसमेंट एपीआई में विज्ञापन दिखाने के लिए कोई विज्ञापन नहीं है, तो वह आपके पास किए गए कॉलबैक से पहले/बाद में अलग-अलग कॉल नहीं करेगा. हालांकि, अगर आप adBreakDone() कॉलबैक देते हैं, तो इसे हमेशा कॉल किया जाएगा, भले ही विज्ञापन न दिखाया गया हो. इसकी मदद से आप प्लेसमेंट से जुड़ा कोई और काम कर सकते हैं, जैसे कि प्लेसमेंट के बारे में ज़्यादा आंकड़े लॉग करने से.

adBreakDone() फ़ंक्शन, आर्ग्युमेंट के तौर पर placementInfo ऑब्जेक्ट को इस तरह परिभाषित करता है:

{
  breakType: '<type>',
  breakName: '<name>',
  breakFormat: 'interstitial|reward',
  breakStatus: 'notReady|timeout|error|noAdPreloaded|frequencyCapped|ignored|other|dismissed|viewed',
}

जहां इस ऑब्जेक्ट के फ़ील्ड में ये सिमेंटिक हैं:

  • breakType को adBreak() को प्रकार का तर्क दिया गया है
  • breakName को adBreak() को नाम दिया गया है
  • breakStatus इस प्लेसमेंट की स्थिति है और यह नीचे दिए गए मानों में से एक हो सकता है:
breakStatus वजह
'notReady' विज्ञापन प्लेसमेंट API शुरू नहीं किया गया था
'timeout' प्लेसमेंट प्लेसमेंट का समय खत्म हो गया, क्योंकि विज्ञापन प्लेसमेंट एपीआई से जवाब मिलने में बहुत ज़्यादा समय लगता
'invalid' प्लेसमेंट अमान्य था. इसे अनदेखा कर दिया गया था. उदाहरण के लिए, हर पेज लोड होने पर सिर्फ़ एक प्रीरोल प्लेसमेंट होना चाहिए. हालांकि, बाद में प्रीरोल करने की सुविधा इस स्थिति में काम नहीं करती
'error' कॉलबैक में कोई JavaScript गड़बड़ी हुई
'noAdPreloaded' कोई विज्ञापन अभी तक पहले से लोड नहीं किया गया था, इसलिए यह प्लेसमेंट छोड़ दिया गया था
'frequencyCapped' एक विज्ञापन नहीं दिखाया गया, क्योंकि इस प्लेसमेंट पर फ़्रीक्वेंसी कैप लागू की गई थी
'ignored' उपयोगकर्ता ने अगली प्लेसमेंट पर पहुंचने से पहले, इनाम के अनुरोध पर क्लिक नहीं किया. showAdFn() को अगले adBreak() से पहले कॉल किया गया था.
'other' किसी अन्य वजह से विज्ञापन नहीं दिखाया गया था. (उदाहरण के लिए, स्क्रीन के साइज़ में आने/बदलने की वजह से, विज्ञापन को अब भी फ़ेच किया जा रहा था या कैश मेमोरी में सेव किए गए पिछले विज्ञापन को नष्ट कर दिया गया था.)
'dismissed' इनाम वाले विज्ञापन को पूरा देखने से पहले उपयोगकर्ता ने इसे खारिज कर दिया
'viewed' विज्ञापन को उपयोगकर्ता ने देखा था

ध्यान दें: adBreakDone(), हमेशा आखिरी कॉलबैक होता है जिसे adBreak() कॉल करता है.

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