Kebijakan Goggle Admob saat ini mengharuskan Iklan ditampilkan saat pengguna melakukan beberapa interaksi. Kegagalan developer menempatkan iklan instersitial dapan berakibat fatal, mulai dari penangguhan unut iklan sampai akud disuspend.
Sebaiknya iklan interstitial tidak tampil seiap saat ketika user hanya melakukan satu interaksi, ini adalah penempatan iklan yang buruk.
Nah untuk mengatasi permasalahan diatas, saya akan berbagi coding penempatan Iklan Insterstitial dimana saat user melakukan setiap 5 kali interaksi barulah iklannya muncul pada saat transisi intraksi tersebut.
Sebagai panduan, saya akan menggunakan project sebelumnya yaitu RecyclerView dimana setiap itemnya diklik sebanyak 5 kali maka iklannya akan tampil.
Sebelumnya buat dulu project recyclerview, silahkan buka postingan sebelumnya disini : RecyclerView Project
Selanjutnya langkah langkah berikut:
Tambahkan library dependency di mudule App:
dependencies {
implementation 'com.google.android.gms:play-services-ads:18.3.0'
}
package com.example.interstitialadsexample;
import androidx.appcompat.app.AppCompatActivity;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import android.os.Bundle;
import android.view.View;
import android.widget.Toast;
import java.util.ArrayList;
public class MainActivity extends AppCompatActivity implements MyRecyclerViewAdapter.ItemClickListener {
MyRecyclerViewAdapter adapter;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// data to populate the RecyclerView with
ArrayList listName = new ArrayList<>();
listName.add("Item 1");
listName.add("Item 2");
listName.add("Item 3");
listName.add("Item 4");
listName.add("Item 5");
// set up the RecyclerView
RecyclerView recyclerView = findViewById(R.id.rvAnimals);
recyclerView.setLayoutManager(new LinearLayoutManager(this));
adapter = new MyRecyclerViewAdapter(this, listName);
adapter.setClickListener(this);
recyclerView.setAdapter(adapter);
}
@Override
public void onItemClick(View view, int position) {
//to show ads when user tap on item x times
//untuk menampilkan iklan saat user mengkik item....:p
MyInterstitialAds ads = (MyInterstitialAds) getApplication();
ads.loadInterstitialad();
Toast.makeText(this, "You clicked " + adapter.getItem(position) + " on row number " + position, Toast.LENGTH_SHORT).show();
}
}
package com.example.interstitialadsexample;
import android.app.Application;
import com.google.android.gms.ads.AdRequest;
import com.google.android.gms.ads.InterstitialAd;
public class MyInterstitialAds extends Application {
private InterstitialAd mInterstitialAd;
private boolean loadingAds =true;
private Integer counter =0;
@Override
public void onCreate() {
super.onCreate();
}
public void loadInterstitialad() {
counter++;
if (loadingAds) {
if (mInterstitialAd == null || !mInterstitialAd.isLoaded()) {
mInterstitialAd = new InterstitialAd(this);
mInterstitialAd.setAdUnitId("/6499/example/interstitial"); //we set ad test unit
AdRequest adRequest = new AdRequest.Builder().build();
mInterstitialAd.loadAd(adRequest);
loadingAds = false;
}
}
if (counter%3==0) { //3 user interactions
if (mInterstitialAd !=null && mInterstitialAd.isLoaded()) {
mInterstitialAd.show();
loadingAds = true;
}
}
}
}
Tambahkan meta tag AD_MANAGER di manifest
<meta-data
android:name="com.google.android.gms.ads.AD_MANAGER_APP"
android:value="true"/>
Download Source code
0 comments