October 15, 2020
Admob implementation 2020
Welcome to our Blog. In this article, we will show you how to implement the necessary codes to monetize your Android app using simple Banner Ad.
Log into your Admob account and create a Banner Ad unit.
Test ID banner: ca-app-pub-1213976995211847/3070735258
build.gradle (app)
apply plugin: 'com.android.application' android { compileSdkVersion 29 defaultConfig { applicationId "com.xx.xxx" minSdkVersion 19 targetSdkVersion 29 multiDexEnabled true versionCode 4 versionName "4" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" android.defaultConfig.vectorDrawables.useSupportLibrary = true } compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 } lintOptions { checkReleaseBuilds false // Or, if you prefer, you can continue to check for errors in release builds, // but continue the build even when errors are found: abortOnError false } buildTypes { release { minifyEnabled true shrinkResources true proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } } dependencies { implementation 'androidx.appcompat:appcompat:1.2.0' implementation 'com.google.android.material:material:1.2.1' implementation 'androidx.vectordrawable:vectordrawable-animated:1.1.0' implementation 'androidx.browser:browser:1.2.0' implementation 'androidx.legacy:legacy-support-v4:1.0.0' implementation 'androidx.constraintlayout:constraintlayout:2.0.2' implementation 'androidx.legacy:legacy-support-v4:1.0.0' implementation 'androidx.cardview:cardview:1.0.0' implementation 'com.google.android.gms:play-services-ads:19.4.0' implementation 'com.github.midorikocak:currency-picker-android:1.1.9' implementation 'com.google.android.gms:play-services-vision:20.1.2' testImplementation 'junit:junit:4.12' }
AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.zakasoft.pricelist"> <uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> <application android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:roundIcon="@mipmap/ic_launcher_round" android:supportsRtl="true" android:theme="@style/AppTheme"> <activity android:name=".xxxxxxActivity" android:label="@string/app_name" android:screenOrientation="portrait"> <intent-filter android:label="@string/app_name"> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <activity android:name="com.google.android.gms.ads.AdActivity" /> <meta-data android:name="com.google.android.gms.ads.APPLICATION_ID" android:value="ca-app-pub-xxxxx~xxxxxx" /> </application> </manifest>
private AdView mAdView; // for test ads start RequestConfiguration configuration = new RequestConfiguration.Builder().setTestDeviceIds(Arrays.asList("XXXX72F06F84F223BDEC5BFFE82C3596")).build(); MobileAds.setRequestConfiguration(configuration); // for test ads end 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); mAdView.setAdListener(new AdListener() { @Override public void onAdLoaded() { super.onAdLoaded(); //Toast.makeText(getApplicationContext(), "loaded" ,Toast.LENGTH_SHORT).show(); } @Override public void onAdFailedToLoad(LoadAdError loadAdError) { super.onAdFailedToLoad(loadAdError); //Toast.makeText(getApplicationContext(), "failed" + loadAdError.toString() ,Toast.LENGTH_SHORT).show(); } });
Layout
<LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal" > <com.google.android.gms.ads.AdView xmlns:ads="http://schemas.android.com/apk/res-auto" android:id="@+id/adView" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_centerHorizontal="true" android:layout_alignParentBottom="true" android:layout_marginBottom="8dp" android:layout_marginTop="8dp" ads:adSize="SMART_BANNER" ads:adUnitId="ca-app-pub-121397699521XXXX/307073XXXX"> </com.google.android.gms.ads.AdView> </LinearLayout>