AdMob is the abbreviation of “Advertisement On Mobile”. As most of the users often prefer the free mobile applications over the paid applications, the developers have streamlined the two alternative routes for app monetization including in-app purchases and in-app advertisements. If you are looking for the ways to efficiently monetize your app by integrating an advertisement in it, this AdMob tutorial 2015 will offer you a complete guide to breakthrough the process in an absolute way.
There are several advertising networks that are grabbing the popularity across the globe. While delivering top-notch solutions for in-app advertisements, they help developers associated with Android applications development platform to generate greater revenue. For instance, the Google AdMob that is the much sought after choice for the majority of developers.
It augments app monetization via an amazing app-vertising model. The featured Software Development Kit (SDK) facilitates the connection across the eminent mobile platforms including, Android, Windows phone and iOS. Its SDK also offers a list of ad formats to choose from like the ad banner as interactive ads, standard banner ad, custom search ad and so forth.
Let’s begin with this AdMob tutorial 2015 and explain the steps needed to be processed for integrating an ad in your mobile application.
Step 1: First Things First – Create an account
While getting started, the very first thing that you will need to do is configure your account with the AdMob. However, if you already possess an account with AdMob, simply sign into that account and proceed further.
Once you are done with that, you will see your publisher id on the top-right corner of the dashboard.
Step 2: Develop an ad unit
Now, navigate to the Monetize tab and generate an advertisement unit while considering your app design. Here, you can see a window as shown in the below image.
Step 3: Create a new Eclipse project
First, get the Google Play Services Library downloaded in your Eclipse IDE.
- Now, access the File tab and under the New tab select the Android Application Project.
- After doing so, you will get a small form, simply add the project details in the corresponding fields.
Here, let’s assume the project name to be AdmobBannerExample.
- Application Name : AdmobBannerExample
- Project Name : AdmobBannerExample
- Package Name : com.android.admob
- Finally import the Google Play Services Library into your mobile application.
Step 4: Update the MainActivity.java class
- Access the MainActivity.java class of your application project.
- Copy and paste the below mentioned piece of tutorial code into it.
Code Snippet for the MainActivity.java class
package com.android.admob; import android.os.Bundle; import android.support.v4.app.Fragment; import android.support.v7.app.ActionBarActivity; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import com.google.android.gms.ads.AdRequest; import com.google.android.gms.ads.AdView; /** * Main Activity. Inflates main activity xml and child fragments. */ public class MyActivity extends ActionBarActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_my); } /** * A placeholder fragment containing a simple view. This fragment * would include your content. */ public static class PlaceholderFragment extends Fragment { public PlaceholderFragment() { } @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View rootView = inflater.inflate(R.layout.fragment_my, container, false); return rootView; } } /** * This class makes the ad request and loads the ad. */ public static class AdFragment extends Fragment { private AdView mAdView; public AdFragment() { } @Override public void onActivityCreated(Bundle bundle) { super.onActivityCreated(bundle); // Gets the ad view defined in layout/ad_fragment.xml with ad unit ID set in // values/strings.xml. mAdView = (AdView) getView().findViewById(R.id.adView); // Create an ad request. Check logcat output for the hashed device ID to // get test ads on a physical device. e.g. // "Use AdRequest.Builder.addTestDevice("ABCDEF012345") to get test ads on this device." AdRequest adRequest = new AdRequest.Builder() .addTestDevice(AdRequest.DEVICE_ID_EMULATOR) .build(); // Start loading the ad in the background. mAdView.loadAd(adRequest); } @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { return inflater.inflate(R.layout.fragment_ad, container, false); } /** Called when leaving the activity */ @Override public void onPause() { if (mAdView != null) { mAdView.pause(); } super.onPause(); } /** Called when returning to the activity */ @Override public void onResume() { super.onResume(); if (mAdView != null) { mAdView.resume(); } } /** Called before the activity is destroyed */ @Override public void onDestroy() { if (mAdView != null) { mAdView.destroy(); } super.onDestroy(); } } }
Step 5: Create XML graphical layout
For generating an XML graphical layout for the MainActivity class, just navigate to the res, right click on the Layout tab, and create a new Android XML File.
Save this file as activity_my.xml. Now, open this file and add the below mentioned piece of code into it.
Code Snippet for activity_my.xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/container" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MyActivity" tools:ignore="MergeRootFrame"> <fragment android:name="com.google.android.gms.example.bannerexample.MyActivity$PlaceholderFragment" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_above="@+id/adFragment" /> <fragment android:id="@+id/adFragment" android:name="com.google.android.gms.example.bannerexample.MyActivity$AdFragment" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_alignParentBottom="true" /> </RelativeLayout>
Code Snippet for fragment_my.xml file
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context=".MyActivity$PlaceholderFragment"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/hello_world" /> </RelativeLayout>
Code Snippet for the fragment_ad.xml file
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:ads="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="match_parent"> <!--ads:adUnitId sets the ad unit ID, which is defined in values/strings.xml --> <com.google.android.gms.ads.AdView android:id="@+id/adView" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_centerHorizontal="true" ads:adSize="BANNER" ads:adUnitId="@string/banner_ad_unit_id" /> </RelativeLayout>
To ensure the Internet access, it is essential to add the “uses-permission” in the “AndroidManifest.xml” file. The below mentioned chunk of code will facilitate access to the Google Play services meta-data and AdActivity.
<uses-permission android:name="android.permission.INTERNET"/> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/> <meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version"/> <activity android:name="com.google.android.gms.ads.AdActivity" android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize" android:theme="@android:style/Theme.Translucent" />
Code Snippet for the AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.android.admob" > <!-- Include required permissions for Google Mobile Ads to run--> <uses-permission android:name="android.permission.INTERNET"/> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/> <application android:allowBackup="true" android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme" > <!--This meta-data tag is required to use Google Play Services.--> <meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version"/> <activity android:name=".MyActivity" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <!--Include the AdActivity configChanges and theme. --> <activity android:name="com.google.android.gms.ads.AdActivity" android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize" android:theme="@android:style/Theme.Translucent" /> </application> </manifest>
On executing the process mentioned in this article, you will get the output as showcased in the following image.
Output:
By following this AdMob tutorial 2015 steps thoroughly and deploying the aforementioned code properly, you can easily integrate an advertisement in your application. This way you can efficiently maximize your return on revenue and boost your business value.
Nice tutorial keep it up. I like it very much.