Установите новый класс, который установил, загрузил и показал статические методы interstatialAd, как показано ниже:
public class AdSetup {
// Application context returned by function --> Application.get()
public static String TesttingDeviceID = "xxxxxxxxxxxxxxxxxxxxxxxxxx";
final static InterstitialAd mInterstitialAd = new InterstitialAd(Application.get());
public static void setInterstitial() {
try {
if (mInterstitialAd.getAdUnitId() == null) {
mInterstitialAd.setAdUnitId(Application.get().getString(R.string.interstitialAd));
}
} catch (Exception e) {
e.printStackTrace();
}
}
public static void loadInterstatial() {
try {
setInterstitial();
AdRequest adRequestInter = new AdRequest.Builder().build();
mInterstitialAd.setAdListener(new AdListener() {
@Override
public void onAdLoaded() {
Log.e("mInterstetial onloaded", "onloaded isLoaded" + mInterstitialAd.isLoaded());
}
@Override
public void onAdFailedToLoad(int i) {
Log.e("mInterstetial onloaded", "onloaded onAdFailedToLoad");
}
@Override
public void onAdOpened() {
// super.onAdOpened();
}
@Override
public void onAdClosed() {
// super.onAdClosed();
}
@Override
public void onAdClicked() {
// super.onAdClicked();
}
});
mInterstitialAd.loadAd(adRequestInter);
} catch (Exception e) {
e.printStackTrace();
}
}
public static void showInterstatial() {
try {
Log.e("mInterstetial show ", "isLoaded" + mInterstitialAd.isLoaded());
if (mInterstitialAd.isLoaded() && mInterstitialAd.getAdUnitId() != null) {
mInterstitialAd.show();
} else {
loadInterstatial();
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
Как вызывать эти методы при щелчке элемента списка или onCreate () новой операции длясоблюдайте политику межстандартной рекламы:
AdSetup.showInterstatial(); // Show ad if already loaded else load Ad
AdSetup.loadInterstatial(); // Load new ad
Обязательно следуйте политикам, перечисленным в ссылках ниже:
Запрещенные внедрения внедрения
Загрузка или выход из приложения Не размещайте промежуточную рекламу при загрузке приложения и при выходе из приложений, поскольку промежуточные объявления должны размещаться только между страницами содержимого приложения.Объявления не должны размещаться в приложениях, которые работают в фоновом режиме на устройстве или вне среды приложения.Пользователю должно быть понятно, с каким приложением связано или реализовано объявление.
Рекомендуемые промежуточные реализации
Кроме того, добавьте класс приложения:
public class Application extends android.app.Application {
// public static DeviceName.DeviceInfo deviceInfo;
private static Application _instance;
@Override
public void onCreate() {
super.onCreate();
_instance = this;
}
//return the App context
public static Application get() {
return _instance;
}
}
Также объявите класс Application
в вашем AndroidManifest.xml
, как показано в первой строке:
<application
android:name=".Application"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:largeHeap="true"
android:allowBackup="false"
android:supportsRtl="true"
android:networkSecurityConfig="@xml/network_security_config"
android:theme="@style/AppTheme">