public class MainActivity extends Activity
{
private WebView mWebView;
private AdView mAdView;
public InterstitialAd interstitialAd;
private static final long GAME_LENGTH_MILLISECONDS = 3000;
private static final String AD_UNIT_ID = "ca-app-pub-3940256099942544/1033173712";
private static final String TAG = "MainActivity";
@Override
@SuppressLint("SetJavaScriptEnabled")
protected void onCreate(Bundle savedInstanceState)
{
setTheme(R.style.AppTheme);
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
setContentView(R.layout.activity_main);
// Con esto configuramos y cargamos el WebView
mWebView = findViewById(R.id.activity_main_webview);
WebSettings webSettings = mWebView.getSettings();
webSettings.setJavaScriptEnabled(true);
webSettings.setDomStorageEnabled(true);
webSettings.setCacheMode(WebSettings.LOAD_DEFAULT);
webSettings.setAppCacheEnabled(true);
mWebView.setWebViewClient(new MyWebViewClient());
mWebView.setWebContentsDebuggingEnabled(true);
mWebView.addJavascriptInterface(new AndroidtoJS(), "test"); //Androidto js class object maps to js test object
mWebView.loadUrl("file:///android_asset/index.html");
MobileAds.initialize(this, new OnInitializationCompleteListener() {
@Override
public void onInitializationComplete(InitializationStatus initializationStatus) {
}
});
mAdView = findViewById(R.id.adView);
AdRequest adRequest = new AdRequest.Builder().build();
mAdView.loadAd(adRequest);
loadAd();
}
public void loadAd()
{
AdRequest adRequest = new AdRequest.Builder().build();
InterstitialAd.load(
this,
AD_UNIT_ID,
adRequest,
new InterstitialAdLoadCallback()
{
@Override
public void onAdLoaded(@NonNull InterstitialAd interstitialAd)
{
MainActivity.this.interstitialAd = interstitialAd;
Log.i(TAG, "onAdLoaded");
interstitialAd.setFullScreenContentCallback(new FullScreenContentCallback()
{
@Override
public void onAdDismissedFullScreenContent()
{
MainActivity.this.interstitialAd = null;
Log.d("TAG", "The ad was dismissed.");
loadAd();
}
@Override
public void onAdFailedToShowFullScreenContent(AdError adError)
{
MainActivity.this.interstitialAd = null;
Log.d("TAG", "The ad failed to show.");
}
@Override
public void onAdShowedFullScreenContent()
{
}
});
}
@Override
public void onAdFailedToLoad(@NonNull LoadAdError loadAdError) {
Log.i(TAG, loadAdError.getMessage());
interstitialAd = null;
String error = String.format(
"domain: %s, code: %d, message: %s",
loadAdError.getDomain(), loadAdError.getCode(), loadAdError.getMessage()
);
}
}
);
}
public void showInterstitial() {
if (interstitialAd != null) {
MainActivity.this.interstitialAd.show(MainActivity.this);
} else {
}
}
public class AndroidtoJS extends Object
{
@JavascriptInterface
public void cargarAnuncio(String msg) {
MainActivity.this.showInterstitial();
}
}
}