Android Studio工程中添加Admob广告条代码详解(转载)
转自:http://blog.csdn.net/mapboo/article/details/49536297
CSDN博主Mapboo原创,感谢博主!
==============================
前言:
纵观国内的广告平台,比如多盟,万普,百度,腾讯,或者别的一些广告平台,真是应接不暇,但是具体接入那就自己判断了,经过一番折腾,最终还是选择了谷歌平台,理应是稳定,可靠,安全,收入颇高,但是登录网络有点问题,应该大家都懂吧,这里就不再赘述了,各自想办法吧;
准备工作:
1,首先你是Android开发者,或者至少会点Java编程基础;
2,熟悉使用Android Studio(以下简称:AS),即官方Android应用开发工具;
3,注册了http://www.google.cn/admob/ 应用,并且有个banner_ad_unit_id吧;
4,待加入横幅广告条的app;
5,可参考官方接入指南:https://developers.google.com/mobile-ads-sdk/docs/admob/android/quick-start
开发过程:
1,创建或打开AS 工程,本示例是新建工程;
2,打开Android SDK Manager安装Google Repository;
3,关联我们的广告SDK,这里有两种方式:
A 点击Project Structure 直接选取,如下图:
com.google.android.gms:play-services:7.8.0;
B 打开build-gradle 加入一行代码,如下图:
compile 'com.google.android.gms:play-services:6.+'
4,程序会开始自动编译,然后打开AndroidManifest.xml 文件,添加如下代码:
- <?xml version="1.0" encoding="utf-8"?>
- <manifest xmlns:android="http://schemas.android.com/apk/res/android"
- package="com.mapboo.adviewdemo" >
- <span style="color:#ff0000;"> <uses-permission android:name="android.permission.INTERNET" />
- <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/></span>
- <application
- android:allowBackup="true"
- android:icon="@mipmap/ic_launcher"
- android:label="@string/app_name"
- android:theme="@style/AppTheme" >
- <span style="color:#ff0000;"> <meta-data android:name="com.google.android.gms.version"
- android:value="@integer/google_play_services_version" /></span>
- <activity
- android:name=".MainActivity"
- android:label="@string/app_name" >
- <intent-filter>
- <action android:name="android.intent.action.MAIN" />
- <category android:name="android.intent.category.LAUNCHER" />
- </intent-filter>
- </activity>
- <span style="color:#ff0000;"> <activity
- android:name="com.google.android.gms.ads.AdActivity"
- android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize"
- android:theme="@android:style/Theme.Translucent" /></span>
- </application>
- </manifest>
5,打开activity_main.xml 文件,输入如下代码:
- <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
- xmlns:tools="http://schemas.android.com/tools"
- xmlns:ads="http://schemas.android.com/apk/res-auto"
- 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=".MainActivity"
- android:gravity="center_vertical">
- <TextView
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:text="@string/demoName"
- android:gravity="center"
- android:textSize="30dp"
- android:layout_marginTop="150dp"
- />
- <com.google.android.gms.ads.AdView
- android:id="@+id/adView_bottom"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:layout_alignParentBottom="true"
- android:layout_centerHorizontal="true"
- android:layout_gravity="bottom"
- ads:adSize="BANNER"
- ads:adUnitId="@string/banner_ad_unit_id" />
- </RelativeLayout>
- <resources>
- <string name="app_name">AdViewDemo</string>
- <string name="demoName">谷歌Admob广告条示例</string>
- <string name="banner_ad_unit_id">ca-app-pub-8514769117499822/6386262194</string>
- </resources>
6,打开MainActivity文件,输入如下代码:
- package com.mapboo.adviewdemo;
- import android.support.v7.app.ActionBarActivity;
- import android.os.Bundle;
- import android.util.Log;
- import android.view.Menu;
- import android.view.MenuItem;
- import com.google.android.gms.ads.AdListener;
- import com.google.android.gms.ads.AdRequest;
- import com.google.android.gms.ads.AdView;
- public class MainActivity extends ActionBarActivity {
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_main);
- /**
- * 创建广告条对象
- */
- AdView mAdView = (AdView) findViewById(R.id.adView_bottom);
- AdRequest adRequest = new AdRequest.Builder().build();
- /**
- * 创建一个监听,比如判断用户是不是已经点击了广告条,以此来给用户增加积分等操作;
- */
- AdListener listener = new AdListener() {
- @Override
- public void onAdClosed() {
- super.onAdClosed();
- Log.i("TAG", "onAdClosed");
- }
- @Override
- public void onAdFailedToLoad(int errorCode) {
- super.onAdFailedToLoad(errorCode);
- Log.i("TAG", "onAdFailedToLoad");
- }
- @Override
- public void onAdLeftApplication() {
- super.onAdLeftApplication();
- Log.i("TAG", "onAdLeftApplication");
- }
- @Override
- public void onAdLoaded() {
- super.onAdLoaded();
- Log.i("TAG", "onAdLoaded");
- }
- @Override
- public void onAdOpened() {
- super.onAdOpened();
- Log.i("TAG", "onAdOpened");
- }
- };
- /**
- * 设置监听
- */
- mAdView.setAdListener(listener);
- /**
- * 开始载入广告条
- */
- mAdView.loadAd(adRequest);
- }
- /**
- *
- 官方示例:https://developers.google.com/mobile-ads-sdk/docs/admob/android/quick-start
- 分享:安卓发布平台 http://blog.csdn.net/mapboo/article/details/49531043
- 应用汇:http://www.appchina.com/
- 安智市场:http://www.anzhi.com/
- 华为市场:http://appstore.huawei.com/
- 百度市场:http://app.baidu.com/pass/center
- 蒲公英:http://www.pgyer.com
- N多网 :http://www.nduoa.com/developer
- 豌豆荚:http://developer.wandoujia.com/
- 360:http://dev.360.cn
- QQ:http://op.open.qq.com
- FIR:http://fir.im
- Android中国开发者 交流QQ群:361871827 欢迎加入一起讨论技术...
- */
- }
编译运行:
运行代码,就会出现Admob广告条,只要替换自己的banner_ad_unit_id就能开始赚钱了;
效果图:
本实例源代码下载地址:http://pan.baidu.com/s/1pJ3UEcr
Android中国开发者 QQ群:361871827 欢迎一起讨论技术..