इंटरस्टीशियल विज्ञापन, फ़ुल-स्क्रीन विज्ञापन होते हैं. ये विज्ञापन, होस्ट ऐप्लिकेशन के इंटरफ़ेस को कवर करते हैं. आम तौर पर, ये विज्ञापन किसी ऐप्लिकेशन के फ़्लो में मौजूद नैचुरल ट्रांज़िशन पॉइंट पर दिखते हैं. उदाहरण के लिए, ये विज्ञापन अलग-अलग गतिविधियों के बीच में या किसी गेम के अलग-अलग लेवल के बीच में ही दिखते हैं. जब कोई ऐप्लिकेशन अचानक दिखने वाला विज्ञापन दिखाता है, तो उपयोगकर्ता के पास विज्ञापन पर टैप करके, विज्ञापन के डेस्टिनेशन पर जाने या उसे बंद करके ऐप्लिकेशन पर वापस जाने का विकल्प होता है.
इस गाइड में, Android ऐप्लिकेशन में इंटरस्टीशियल विज्ञापनों को इंटिग्रेट करने का तरीका बताया गया है.
ज़रूरी शर्तें
- Google Mobile Ads SDK 19.7.0 या इसके बाद का वर्शन.
- शुरुआती निर्देशों की गाइड को पूरा करें.
हमेशा टेस्ट विज्ञापनों की मदद से जांच करना
अपने ऐप्लिकेशन बनाते और टेस्ट करते समय, लाइव और प्रोडक्शन विज्ञापनों के बजाय, टेस्ट विज्ञापनों का इस्तेमाल करें. ऐसा न करने पर, आपके खाते को निलंबित किया जा सकता है.
टेस्ट विज्ञापनों को लोड करने का सबसे आसान तरीका, Android इंटरस्टीशियल के लिए हमारे खास टेस्ट विज्ञापन यूनिट आईडी का इस्तेमाल करना है:
/21775744923/example/interstitial
इसे खास तौर पर, हर अनुरोध के लिए टेस्ट विज्ञापन दिखाने के लिए कॉन्फ़िगर किया गया है. साथ ही, कोडिंग, टेस्टिंग, और डीबग करने के दौरान, अपने ऐप्लिकेशन में इसका इस्तेमाल किया जा सकता है. बस पक्का करें कि ऐप्लिकेशन पब्लिश करने से पहले, आपने इसे अपनी विज्ञापन यूनिट के आईडी से बदल दिया हो.
Mobile Ads SDK के टेस्ट विज्ञापनों के काम करने के तरीके के बारे में ज़्यादा जानने के लिए, टेस्ट विज्ञापन लेख पढ़ें.
विज्ञापन लोड करना
इंटरस्टीशियल विज्ञापन लोड करने के लिए, AdManagerInterstitialAd
स्टैटिक
load()
तरीके को कॉल करें. साथ ही, लोड किया गया विज्ञापन या कोई संभावित गड़बड़ी पाने के लिए, AdManagerInterstitialAdLoadCallback
को पास करें. ध्यान दें कि अन्य फ़ॉर्मैट लोड कॉलबैक की तरह ही, AdManagerInterstitialAdLoadCallback
ज़्यादा सटीक गड़बड़ी की जानकारी देने के लिए, LoadAdError
का इस्तेमाल करता है.
import com.google.android.gms.ads.admanager.AdManagerInterstitialAd;
import com.google.android.gms.ads.admanager.AdManagerInterstitialAdLoadCallback;
public class MainActivity extends Activity {
private AdManagerInterstitialAd mAdManagerInterstitialAd;
private static final String TAG = "MainActivity";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
AdManagerAdRequest adRequest = new AdManagerAdRequest.Builder().build();
AdManagerInterstitialAd.load(this,"/21775744923/example/interstitial", adRequest,
new AdManagerInterstitialAdLoadCallback() {
@Override
public void onAdLoaded(@NonNull AdManagerInterstitialAd interstitialAd) {
// The mAdManagerInterstitialAd reference will be null until
// an ad is loaded.
mAdManagerInterstitialAd = interstitialAd;
Log.i(TAG, "onAdLoaded");
}
@Override
public void onAdFailedToLoad(@NonNull LoadAdError loadAdError) {
// Handle the error
Log.d(TAG, loadAdError.toString());
mAdManagerInterstitialAd = null;
}
});
}
}
import com.google.android.gms.ads.admanager.AdManagerInterstitialAd;
import com.google.android.gms.ads.admanager.AdManagerInterstitialAdLoadCallback;
class MainActivity : AppCompatActivity() {
private var mAdManagerInterstitialAd: AdManagerInterstitialAd? = null
private final val TAG = "MainActivity"
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
val adRequest = AdManagerAdRequest.Builder().build()
AdManagerInterstitialAd.load(this,"/21775744923/example/interstitial", adRequest, object : AdManagerInterstitialAdLoadCallback() {
override fun onAdFailedToLoad(adError: LoadAdError) {
Log.d(TAG, adError?.toString())
mAdManagerInterstitialAd = null
}
override fun onAdLoaded(interstitialAd: AdManagerInterstitialAd) {
Log.d(TAG, 'Ad was loaded.')
mAdManagerInterstitialAd = interstitialAd
}
})
}
}
FullScreenContentCallback सेट करना
FullScreenContentCallback
, आपके InterstitialAd
को दिखाने से जुड़े इवेंट को मैनेज करता है. InterstitialAd
दिखाने से पहले, कॉलबैक सेट करना न भूलें:
mAdManagerInterstitialAd.setFullScreenContentCallback(new FullScreenContentCallback(){
@Override
public void onAdClicked() {
// Called when a click is recorded for an ad.
Log.d(TAG, "Ad was clicked.");
}
@Override
public void onAdDismissedFullScreenContent() {
// Called when ad is dismissed.
// Set the ad reference to null so you don't show the ad a second time.
Log.d(TAG, "Ad dismissed fullscreen content.");
mAdManagerInterstitialAd = null;
}
@Override
public void onAdFailedToShowFullScreenContent(AdError adError) {
// Called when ad fails to show.
Log.e(TAG, "Ad failed to show fullscreen content.");
mAdManagerInterstitialAd = null;
}
@Override
public void onAdImpression() {
// Called when an impression is recorded for an ad.
Log.d(TAG, "Ad recorded an impression.");
}
@Override
public void onAdShowedFullScreenContent() {
// Called when ad is shown.
Log.d(TAG, "Ad showed fullscreen content.");
}
});
mAdManagerInterstitialAd?.fullScreenContentCallback = object: FullScreenContentCallback() {
override fun onAdClicked() {
// Called when a click is recorded for an ad.
Log.d(TAG, "Ad was clicked.")
}
override fun onAdDismissedFullScreenContent() {
// Called when ad is dismissed.
Log.d(TAG, "Ad dismissed fullscreen content.")
mAdManagerInterstitialAd = null
}
override fun onAdFailedToShowFullScreenContent(adError: AdError?) {
// Called when ad fails to show.
Log.e(TAG, "Ad failed to show fullscreen content.")
mAdManagerInterstitialAd = null
}
override fun onAdImpression() {
// Called when an impression is recorded for an ad.
Log.d(TAG, "Ad recorded an impression.")
}
override fun onAdShowedFullScreenContent() {
// Called when ad is shown.
Log.d(TAG, "Ad showed fullscreen content.")
}
}
विज्ञापन दिखाना
इंटरस्टीशियल विज्ञापनों को ऐप्लिकेशन के फ़्लो में मौजूद नैचुरल ट्रांज़िशन पॉइंट पर दिखाया जाना चाहिए. उदाहरण के लिए, किसी गेम के अलग-अलग लेवल के बीच में या उपयोगकर्ता के कोई टास्क पूरा करने के बाद.
इंटरस्टीशियल विज्ञापन दिखाने के लिए, show()
तरीके का इस्तेमाल करें.
if (mAdManagerInterstitialAd != null) {
mAdManagerInterstitialAd.show(MyActivity.this);
} else {
Log.d("TAG", "The interstitial ad wasn't ready yet.");
}
if (mAdManagerInterstitialAd != null) {
mAdManagerInterstitialAd?.show(this)
} else {
Log.d("TAG", "The interstitial ad wasn't ready yet.")
}
नीति के उल्लंघन से बचने के कुछ सबसे सही तरीके
- देखें कि आपके ऐप्लिकेशन के लिए, इंटरस्टीशियल विज्ञापन सही विज्ञापन टाइप हैं या नहीं.
- इंटरस्टीशियल विज्ञापन, उन ऐप्लिकेशन में सबसे अच्छा परफ़ॉर्म करते हैं जिनमें नेचुरल ट्रांज़िशन पॉइंट होते हैं. किसी ऐप्लिकेशन में ट्रांज़िशन पॉइंट उस स्थिति को माना जा सकता है, जब कोई टास्क पूरा हो गया हो. जैसे, कोई इमेज शेयर होना या गेम का कोई लेवल पूरा होना. पक्का करें कि आपने यह तय कर लिया हो कि अपने ऐप्लिकेशन के वर्कफ़्लो में किन पॉइंट पर इंटरस्टीशियल विज्ञापन दिखाए जाएंगे और उपयोगकर्ता की प्रतिक्रिया कैसी हो सकती है.
- पेज पर अचानक दिखने वाला विज्ञापन दिखाते समय, कार्रवाई को रोकना न भूलें.
- पेज पर अचानक दिखने वाले विज्ञापन कई तरह के होते हैं: टेक्स्ट, इमेज, वीडियो वगैरह. यह पक्का करना ज़रूरी है कि जब आपका ऐप्लिकेशन इंटरस्टीशियल विज्ञापन दिखाता है, तो वह कुछ संसाधनों के इस्तेमाल को भी निलंबित कर देता है, ताकि विज्ञापन उनका फ़ायदा ले सके. उदाहरण के लिए, इंटरस्टीशियल विज्ञापन दिखाने के लिए कॉल करते समय, पक्का करें कि आपके ऐप्लिकेशन से जनरेट होने वाले किसी भी ऑडियो आउटपुट को रोक दिया गया हो.
- लोड होने में ज़रूरत के मुताबिक समय दें.
- इंटरस्टीशियल विज्ञापनों को सही समय पर दिखाना ज़रूरी है. साथ ही, यह भी ज़रूरी है कि उपयोगकर्ता को उन्हें लोड होने का इंतज़ार न करना पड़े.
show()
को कॉल करने से पहले,load()
को कॉल करके विज्ञापन को पहले से लोड करने से यह पक्का किया जा सकता है कि जब भी विज्ञापन दिखाने का समय आए, तब आपके ऐप्लिकेशन में इंटरस्टीशियल विज्ञापन पूरी तरह से लोड हो. - उपयोगकर्ता को विज्ञापनों से भरपूर न करें.
- ऐसा लग सकता है कि अपने ऐप्लिकेशन में इंटरस्टीशियल विज्ञापनों की फ़्रीक्वेंसी बढ़ाने से, रेवेन्यू बढ़ेगा. हालांकि, इससे उपयोगकर्ता अनुभव खराब हो सकता है और क्लिक मिलने की दर कम हो सकती है. पक्का करें कि उपयोगकर्ताओं को बार-बार विज्ञापनों से इतना परेशान न किया जाए कि वे आपके ऐप्लिकेशन का आनंद न ले पाएं.
GitHub पर मौजूद उदाहरण
अगले चरण
- विज्ञापन लक्ष्यीकरण के बारे में अधिक जानें.
- उपयोगकर्ता की निजता के बारे में ज़्यादा जानें.
- ऑप्टिमाइज़ किए गए SDK टूल को शुरू करने और विज्ञापन लोड करने की सुविधा (बीटा वर्शन) के बारे में जानें.