Filter iklan dewasa dengan KIDOZ di aplikasi/game target Anak

بِسْمِ اللَّهِ الرَّحْمَنِ الرَّحِيم
Hallo om pengguna Source Code Aliendroid, pernah tidak pembaca merasa risih dengan munculnya iklan senonoh di aplikasi/game? padahal sudah melakukan filter untuk iklan dewasa. Di akun Admob memang terdapat filter untuk iklan keluarga dan target Anak. Tetapi karena saat ini Admob menerapkan limits ads, mau tidak mau pembuat aplikasi/game harus mencari alternatif iklan selain Admob. Banyak pilihan ads network tapi menurut penulis yang paling cocok adalah kidoz jika memang target aplikasi/game adalah anak (rekomendasi google console). Dengan menggunakan iklan kidoz tidak akan lagi muncul iklan abnormal yang menjual aurat seperti tiktuk, snek video, bego video dll.
Berikut cara pasang SDK iklan Kidoz:
1. Konfigurasi SDK
Untuk menampilkan iklan kidoz tambahkan 2 libs dibagian dependencies gradle:module app
dependencies {
implementation 'com.kidoz.sdk:KidozSDK:8.9.0@aar'
implementation group: 'org.greenrobot', name: 'eventbus', version: '3.0.0'
}
2. Konfigurasi AndroidManifest.xml
Pada bagian AndroidManifest tambahkan permission dan reciver Kidoz
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
package="com.aliendroid.brainkids">
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:hardwareAccelerated="true"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:screenOrientation="portrait"
android:requestLegacyExternalStorage="true"
android:networkSecurityConfig="@xml/network_config"
android:usesCleartextTraffic="true"
android:name=".jigsaw.config.MyApplication"
android:configChanges="screenLayout|screenSize|orientation|keyboardHidden|keyboard"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity android:name=".jigsaw.ui.ListActivity"
android:screenOrientation="portrait"></activity>
<activity
android:name=".jigsaw.ui.MainActivity"
android:screenOrientation="portrait">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<receiver android:name="com.kidoz.sdk.api.receivers.SdkReceiver" android:enabled="true" >
<intent-filter>
<action android:name="android.intent.action.PACKAGE_ADDED"/>
<data android:scheme="package"/>
</intent-filter>
</receiver>
</application>
</manifest>
3. Inisialisai SDK Kidoz
Sebelum menampilkan iklan kidoz tanambahkan inisial sdk pada awal activity. Biasanya ditempatkan di SplashActivity.java atau MainActivity.java. jika pembaca tidak tahu activity mana yang muncul pertama kali, silahkan buka AndroidManifest.xml,
import com.kidoz.sdk.api.KidozSDK;
import com.kidoz.sdk.api.interfaces.SDKEventListener;
import com.kidoz.sdk.api.ui_views.kidoz_banner.KidozBannerListener;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
KidozSDK.setLoggingEnabled(true);
KidozSDK.setSDKListener(new SDKEventListener() {
@Override
public void onInitSuccess() {
//SDK Init | Success().
}
@Override
public void onInitError(String error) {
//SDK Init | Error
}
});
KidozSDK.initialize(this, "PUB_ID", "TOKEN");
}
}
Jangan lupa untuk mengubah PUB_ID dan TOKEN yang pembaca buat di akun Kidoz. Cek menu profil untuk melihat ID tersebut.
4. Menampilkan Iklan Banner
Iklan Kidoz hanya menggunakan format java untuk menampilkan iklan, sehingga butuh mengatur space 50dp-70dp (top atau bottom) di layout xml. Iklan bisa ditempatkan dibawah layout dengan menuliskan code setBannerPosition(BANNER_POSITION.BOTTOM_CENTER); dan setBannerPosition(BANNER_POSITION.TOP_CENTER); untuk posisi iklan diatas.
import com.kidoz.sdk.api.KidozSDK;
import com.kidoz.sdk.api.interfaces.SDKEventListener;
import com.kidoz.sdk.api.ui_views.kidoz_banner.KidozBannerListener;
import com.kidoz.sdk.api.ui_views.new_kidoz_banner.BANNER_POSITION;
import com.kidoz.sdk.api.ui_views.new_kidoz_banner.KidozBannerView;
public class MainActivity extends AppCompatActivity {
private KidozBannerView mKidozBannerView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
KidozSDK.setLoggingEnabled(true);
KidozSDK.setSDKListener(new SDKEventListener() {
@Override
public void onInitSuccess() {
//SDK Init | Success().
}
@Override
public void onInitError(String error) {
//SDK Init | Error
}
});
KidozSDK.initialize(this, "PUB_ID", "TOKEN");
}
mKidozBannerView = KidozSDK.getKidozBanner(this);
mKidozBannerView.setBannerPosition(BANNER_POSITION.BOTTOM_CENTER);
mKidozBannerView.setKidozBannerListener(new KidozBannerListener()
{
@Override
public void onBannerViewAdded()
{
}
@Override
public void onBannerReady()
{
mKidozBannerView.show();
}
@Override
public void onBannerError(String errorMsg)
{
}
@Override
public void onBannerClose()
{
}
@Override
public void onBannerNoOffers()
{
}
});
mKidozBannerView.load();
}
5. Menampilkan Iklan Inter
Iklan inter bisa diimplementasikan saat perpindahan activity atau saat permainan berakhir. Pada contoh penulis menempatkan pada tombol membuka activiti lain
import com.kidoz.sdk.api.KidozSDK;
import com.kidoz.sdk.api.interfaces.SDKEventListener;
import com.kidoz.sdk.api.ui_views.kidoz_banner.KidozBannerListener;
import com.kidoz.sdk.api.ui_views.new_kidoz_banner.BANNER_POSITION;
import com.kidoz.sdk.api.ui_views.new_kidoz_banner.KidozBannerView;
import com.kidoz.sdk.api.KidozInterstitial;
import com.kidoz.sdk.api.ui_views.interstitial.BaseInterstitial;
public class MainActivity extends AppCompatActivity {
private KidozBannerView mKidozBannerView;
private KidozInterstitial mKidozInterstitial;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
KidozSDK.setLoggingEnabled(true);
KidozSDK.setSDKListener(new SDKEventListener() {
@Override
public void onInitSuccess() {
//SDK Init | Success().
}
@Override
public void onInitError(String error) {
//SDK Init | Error
}
});
KidozSDK.initialize(this, "PUB_ID", "TOKEN");
}
mKidozBannerView = KidozSDK.getKidozBanner(this);
mKidozBannerView.setBannerPosition(BANNER_POSITION.BOTTOM_CENTER);
mKidozBannerView.setKidozBannerListener(new KidozBannerListener()
{
@Override
public void onBannerViewAdded()
{
}
@Override
public void onBannerReady()
{
mKidozBannerView.show();
}
@Override
public void onBannerError(String errorMsg)
{
}
@Override
public void onBannerClose()
{
}
@Override
public void onBannerNoOffers()
{
}
});
mKidozBannerView.load();
mKidozInterstitial = new KidozInterstitial((Activity)MainActivity.this, KidozInterstitial.AD_TYPE.INTERSTITIAL);
mKidozInterstitial.setOnInterstitialEventListener
(new BaseInterstitial.IOnInterstitialEventListener()
{
@Override
public void onClosed()
{
}
@Override
public void onOpened()
{
}
@Override
public void onReady()
{
mKidozInterstitial.show();
}
@Override
public void onLoadFailed()
{
}
@Override
public void onNoOffers()
{
}
});
Button muncul_inter = findViewById(R.id.btn_inter); muncul_inter.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) {
if (mKidozInterstitial.isLoaded() == false)
{
mKidozInterstitial.loadAd();
} else
{
mKidozInterstitial.show();
}
} });
}
Silahkan uji coba iklan tersebut, semoga bermanfaat.