उदाहरण

नीचे सिंक्रोनस या एसिंक्रोनस विधि का उपयोग करके Yandex Games SDK को कॉन्फ़िगर करने के तरीके के उदाहरण दिए गए हैं।

उदाहरण विशिष्टताएँ:

  1. कॉलबैक प्रकार्य पहले विज्ञापन आग्रह के लिए नहीं सेट किए जाते हैं।
  2. प्रत्येक संभावित कॉलबैक को दूसरे आग्रह और प्रत्येक आगामी आग्रह के लिए निर्दिष्ट किया जाता है।
  3. विज्ञापन दिखाएँ बटन को एक 'click' ईवेंट हैंडलर असाइन किया जाता है (वह हर बार बटन को क्लिक किए जाने पर किसी विज्ञापन का आग्रह करता है)।
 <!DOCTYPE html>
 <html>
 <head>
     <meta charset="UTF-8">
     <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1" />
     <meta name="mobile-web-app-capable" content="yes">
     <meta name="apple-mobile-web-app-capable" content="yes">
     <title>पेज उदाहरण जहाँ SDK को सिंक्रोनस रूप से कॉन्फ़िगर किया गया हो</title>
     <script src="/sdk.js"></script>
     <script>
         YaGames.init().then(ysdk => {
             ysdk.adv.showFullscreenAdv();

             const buttonElem = document.querySelector('#button');

             let commonCounter = 0;
             buttonElem.addEventListener('click', () => {
                 let counter = 0;

                 function getCallback(callbackName) {
                     return () => {
                         counter += 1;
                         commonCounter += 1;

                         console.log(`showFullscreenAdv; callback ${callbackName}; ${counter} call`);
                     }
                 }

                 ysdk.adv.showFullscreenAdv({
                     callbacks: {
                         onClose: getCallback('onClose'),
                         onOpen: getCallback('onOpen'),
                         onError: getCallback('onError')
                     }
                 });
             });
         });
     </script>
 </head>
 <body>
     <button id="button">विज्ञापन दिखाएँ</button>
 </body>
 </html>

उदाहरण विशिष्टताएँ:

  1. पहले विज्ञापन आग्रह के लिए एक onClose कॉलबैक प्रकार्य सेट किया जाता है।

  2. प्रत्येक संभावित कॉलबैक प्रकार्य को दूसरे आग्रह और प्रत्येक आगामी आग्रह के लिए निर्दिष्ट किया जाता है।

  3. विज्ञापन ब्लॉक को बंद किए जाने के बाद कोड रन को onClose कॉलबैक-प्रकार्य पर जोड़ा जाता है।

  4. SDK या कॉलबैक प्रकार्यों के कारण हुई सभी त्रुटियों को onError प्रकार्य पर पास कर दिया जाता है।

  5. विज्ञापन दिखाएँ बटन को एक 'click' ईवेंट हैंडलर असाइन किया जाता है (वह हर बार बटन को क्लिक किए जाने पर किसी विज्ञापन का आग्रह करता है)।

 <!DOCTYPE html>
 <html>
 <head>
     <meta charset="UTF-8">
     <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1" />
     <meta name="mobile-web-app-capable" content="yes">
     <meta name="apple-mobile-web-app-capable" content="yes">
     <title>SDK एसिंक्रोनस रूप से कॉन्फ़िगर किया गया के साथ पेज का उदाहरण</title>
     <script>
         let ysdk;

         function initSDK() {
             YaGames
                 .init()
                 .then(ysdk_ => {
                     ysdk = ysdk_;
                     ysdk.adv.showFullscreenAdv({
                         callbacks: {
                             onClose: wasShown => {
                                 console.info('First close')
                             }
                         }
                     });
                 })
         }

         document.addEventListener('DOMContentLoaded', () => {
             const buttonElem = document.querySelector('#button');

             let commonCounter = 0;
             buttonElem.addEventListener('click', () => {
                 let counter = 0;

                 function getCallback(callbackName) {
                     return () => {
                         counter += 1;
                         commonCounter += 1;

                         if (commonCounter % 3 === 0) {
                             throw new Error(`Test error in ${callbackName}, everything okey, it should not abort other code execution`);
                         }

                         console.info(`showFullscreenAdv; callback ${callbackName}; ${counter} call`);
                     }
                 }

                 function makeSomethingImportant() {
                     console.info('It\'s very important \'console.info\'');
                 }

                 if (ysdk) {
                     ysdk.adv.showFullscreenAdv({
                         callbacks: {
                             onClose: makeSomethingImportant,
                             onOpen: getCallback('onOpen'),
                             onError: function(error) {
                                 console.error(error);
                             }
                         }
                     });
                 } else {
                     makeSomethingImportant();
                 }
             });
         });
     </script>
 </head>
 <body>
 <!-- Yandex Games SDK -->
 <script>
     (function(d) {
         var t = d.getElementsByTagName('script')[0];
         var s = d.createElement('script');
         s.src = '/sdk.js';
         s.async = true;
         t.parentNode.insertBefore(s, t);
         s.onload = initSDK;
     })(document);
 </script>
 <button id="button">विज्ञापन दिखाएँ</button>
 </body>
 </html>
  • onClose: इसका आग्रह तब किया जाता है जब कोई विज्ञापन बंद हो, त्रुटि पर हो, या बार-बार आग्रहों के कारण कोई विज्ञापन खुलने में विफल रहा हो। wasShown तर्क (प्रकार boolean) के साथ उपयोग किया जाता है, जिसका मान यह दर्शाता है कि कोई विज्ञापन दिखाया गया था या नहीं।
  • onOpen: आग्रह तब किया जाता है जब कोई विज्ञापन सफलतापूर्वक खोला गया हो।
  • onError: आग्रह तब किया जाता है जब कोई त्रुटि होती है। त्रुटि ऑब्जेक्ट कॉलबैक प्रकार्य पर पास कर दिया जाता है।

onClose: इसका आग्रह तब किया जाता है जब कोई विज्ञापन बंद हो, त्रुटि पर हो, या बार-बार आग्रहों के कारण कोई विज्ञापन खुलने में विफल रहा हो। wasShown तर्क (प्रकार boolean) के साथ उपयोग किया जाता है, जिसका मान यह दर्शाता है कि कोई विज्ञापन दिखाया गया था या नहीं।

onError: आग्रह तब किया जाता है जब कोई त्रुटि होती है। त्रुटि ऑब्जेक्ट कॉलबैक प्रकार्य पर पास कर दिया जाता है।

onOpen: आग्रह तब किया जाता है जब कोई विज्ञापन सफलतापूर्वक खोला गया हो।