Admob

Pemasangan Iklan Admob Dengan Benar

Pemasangan iklan dengan benar menjadi penting karena pemasangan yang salah dapat mengakibatkan invalid click dan invalid activity.

Kesalahan para publisher Admob yaitu memasang iklan sebanyak-banyaknya dengan tujuan mendapatkan penghasilan yang besar. Padahal ada banyak aspek yang perlu diperhatikan, salah satunya yaitu kenyamanan pengguna.

Aturan Dasar Pemasangan Iklan Admob

Admob telah menetapkan aturan dasar dalam pemasangan dan peletakan iklan banner, interstitial ad, dan rewarded ad. Ketentuannya tersebut dapat berubah sewaktu-waktu sesuai dengan kebijakan terbaru.

Iklan banner dapat diletakkan di mana saja di halaman aplikasi. Di atas, bawah, tengah tidak masalah dengan ketentuan ketika pengguna melihat halaman aplikasi hanya boleh melihat satu iklan banner.

Contohnya sebagai berikut.

Peletakan iklan banner Admob

Interstitial Ad

Berdsarkan kebijakan terbaru, iklan Interstitial boleh ditetakkan di awal aplikasi dibuka. Akan tetapi harus diberi jeda splash screen.

Iklan Interstitial juga dapat diletakkan di setiap transisi halaman apapun, dengan ketentuan tidak boleh diletakkan secara berturut-turut.

Peletakan yang salah
Peletakan yang benar

Iklan interstitial tidak boleh diletakkan saat pengguna keluarga dari aplikasi.

Rewarded Ad

Rewarded Ad menyumbangkan penghasilan yang cukup besar. Sesuai dengan namanya, pengguna harus mendapatkan haknya yaitu reward setelah menonton iklan. Jadi untuk meletakkan iklan rewarded, aplikasi kita harus memiliki fitur untuk memberikan reward seperti (konten yang dikunci, poin, dll).

Tips Menghindari Invalid Activity

Invalid activity dan invalid click adalah momok terbesar bagi publisher Admob. Meskipun kita merasa mengintegrasikan iklan dengan benar sesuai dengan aturan dan kebijakan yang berlaku, masalah ini terkadang masih muncul. Lalu kenapa?

Berikut tips untuk menghindari invalid activity dan invalid click:

  1. Letakkan iklan sesuai dengan aturan dan kebijakan terbaru
  2. Gunakan kode iklan sample untuk saat melakukan pengetesan aplikasi. Setelah final barulah ganti dengan kode iklan kita, lalu langsung saja buat file apk.
  3. Terapkan precaching untuk iklan interstitial

Pre-Caching Interstitial Ads

Sudah merasa mengimplementasikan iklan Interstitial dengan benar, tapi tetap melanggar kebijakan? Hal ini beberapa implementasi yang menyebabkan pelanggaran kebijakan.

  • Ad request berjalan secara asynchronous, sehingga iklan bisa diload dan dimunculkan secara tiba-tiba.
  • Hal ini menyebabkan accidental click, atau klik yang tidak disengaja

Cara mencegah accidental click yaitu dengan melakukan pre-caching dengan melakukan request di halaman sebelumnya. Lalu ketika iklan mau ditampilkan dilakukan pengecekan apakah iklan sudah load, jika sudah maka tampilkan iklan dan jika belum maka langsung beralih ke halaman selanjutnya.

Pemasangan iklan sebelum pre caching
Pemasangan iklan setelah pre caching

Tutorial Menerapkan Pre-Caching

1. Tambahkan “MyApplication” Class

public class MyApplication extends Application {
	private InterstitialAd mInterstitialAd;
	@Override
	public void onCreate() {
		super.onCreate();
	}
/**
* Load InterstitialAd when InterstitialAd hasn't been loaded yet.
*/
synchronized public void loadInterstitialAd() {
	if (mInterstitialAd == null || !mInterstitialAd.isLoaded()) {
		mInterstitialAd = new InterstitialAd(this);
		mInterstitialAd.setAdUnitId("ca-app-pub-3940256099942544/1033173712");
		AdRequest adRequest = new AdRequest.Builder()
		.addTestDevice("YOUR_DEVICE_HASH")
		.build();
		mInterstitialAd.setAdListener(new AdListener() {
			@Override
			public void onAdFailedToLoad(int errorCode) {
				super.onAdFailedToLoad(errorCode);
				Log.d("InterstitialAd", "onAdFailedToLoad with error: " +
					errorCode);
			}
			@Override
			public void onAdLoaded() {
				super.onAdLoaded();
				Log.d("InterstitialAd", "onAdLoaded");
			}
		});
		mInterstitialAd.loadAd(adRequest);
	} else {
		Log.d("InterstitialAd", "InterstitialAd has been loaded");
	}
}
/**
* Get the InterstitialAd for this Application.
*/
synchronized public InterstitialAd getInterstitialAd() {
	if (mInterstitialAd == null) {
		loadInterstitialAd();
	}
	return mInterstitialAd;
}
}

2. Ubah AndroidManifest.xml

Tambahkan android:name=”.MyApplication” seperti di bawah ini.

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
	package="com.example.tapin10s" >
	<application
		android:name=".MyApplication"
		android:allowBackup="true"
		android:icon="@mipmap/ic_launcher"
		android:label="@string/app_name"
		android:supportsRtl="true"
		android:theme="@style/AppTheme" >
		<activity android:name=".TitleActivity" >
			<intent-filter>
				<action android:name="android.intent.action.MAIN" />
				<category android:name="android.intent.category.LAUNCHER" />
			</intent-filter>
		</activity>
	</application>
</manifest>

3. Load Interstitial Lebih Awal

Letakkan kode berikut ini di class awal sebelum Interstitial ditampilkan untuk load iklan.

// Get the MyApplication object.
MyApplication application = (MyApplication) getApplication();
// Load InterstitialAd.
application.loadInterstitialAd();

4. Tampilkan Iklan Interstitial

public void onRetryButtonClick(View view) {
	// Get the MyApplication object.
	MyApplication application = (MyApplication) getApplication();
	// Obtain the shared InterstitialAd object.
	InterstitialAd mInterstitialAd = application.getInterstitialAd();
	if (mInterstitialAd.isLoaded()) {
		mInterstitialAd.setAdListener(new AdListener() {
			@Override
			public void onAdClosed() {
				// When ad is closed, start Game Activity.
				super.onAdClosed();
				startGameActivity();
			}
		});
		mInterstitialAd.show();
	} else {
		startGameActivity();
	}
}
Modul ini akan diupdate sesuai dengan perkembangan dan kebijakan terbaru. Silahkan cek halaman ini beberapa hari lagi.

Leave a Reply