我想在 Activity 中加载插页式广告并在另一个 Activity 中显示它。我找到了这个主题并尝试执行第一个答案中的步骤,但有很多错误。
How To preload admob interstitial ad and send to another android activity using intent
这就是我所做的:
我创建了一个公共(public)类并将其命名为“AdManager”,并将以下代码放入其中:
`package com.website.test; import com.google.android.gms.ads.InterstitialAd;
public class AdManager {
// Static fields are shared between all instances. static InterstitialAd ad;
public AdManager() { createAd(); }
public void createAd() { // Create an ad. interstitialAd = new InterstitialAd(this); interstitialAd.setAdUnitId("");
AdRequest adRequest = new AdRequest.Builder() .addTestDevice(AdRequest.DEVICE_ID_EMULATOR) .addTestDevice(TEST_DEVICE_ID).build(); // Load the interstitial ad. interstitialAd.loadAd(adRequest); } public InterstitialAd getAd() { return ad;}}
在 A 类的创建事件中,我输入了以下内容:
AdManager adManager = new AdManager();
adManager.createAd();
- 在我想要显示插页式广告的 Activity 的创建事件中,我放置了以下内容:
InterstitialAd ad = admanager.getAd();
if (ad.isLoaded) {
广告.show();
}
但有一些错误,如我所附的图片所示,请告诉我哪里出了问题?
最佳答案
class AdManager {
// Static fields are shared between all instances.
private static InterstitialAd interstitialAd;
private static boolean isInterAdsShowed = false;
private Activity activity;
private String AD_UNIT_ID;
AdManager(Activity activity, String AD_UNIT_ID) {
this.activity = activity;
this.AD_UNIT_ID = AD_UNIT_ID;
createAd();
}
void createAd() {
// Create an ad.
interstitialAd = new InterstitialAd(activity);
interstitialAd.setAdUnitId(AD_UNIT_ID);
AdRequest adRequest = new AdRequest.Builder()
//.addTestDevice(AdRequest.DEVICE_ID_EMULATOR)
//.addTestDevice(TEST_DEVICE_ID)
.build();
// Load the interstitial ad.
interstitialAd.loadAd(adRequest);
}
static InterstitialAd getAd() {
if(interstitialAd != null && interstitialAd.isLoaded() && !isInterAdsShowed) {
isInterAdsShowed = true;
return interstitialAd;
}
else return null;
}
}
...... Activity A
AdManager adManager = new AdManager(this,"your ads id");
adManager.createAd();
.... Activity B
InterstitialAd ad = AdManager.getAd();
if (ad != null) {
ad.show();
}
关于java - 如何在 Activity 中加载插页式广告并在另一个 Activity 中显示?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33985009/