Google Admob移动广告快速集成步骤

第一步:引入依赖包
//admob广告
implementation 'com.google.android.gms:play-services-ads:17.2.0'
第二步:在清单文件中设置appID
<application
<!-- admob配置 -->
<meta-data
android:name="com.google.android.gms.ads.APPLICATION_ID"
<!-- 注意 这里设置应用id 而不是广告单元id 每个广告都有各自独立的id -->
android:value="ca-app-pub-xxxxxxxxxxxxxxxxxxxx"/>
</application>
第三步:在布局文件中设置广告显示的具体位置
<!-- 布局中可以设置广告单元id  这里考虑到防止反编译 改成在代码中设置-->
<com.google.android.gms.ads.AdView xmlns:ads="http://schemas.android.com/apk/res-auto"
android:id="@+id/adView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
ads:adSize="SMART_BANNER"
></com.google.android.gms.ads.AdView>
第四步:初始化Admob
// 初始化Admob  这个地方填appid 注意
MobileAds.initialize(this, "ca-app-pub-xxxxxxxxxxxxxxxxxxxx");
第五步: 在对应的Activity或Fragment中设置广告显示
private static final String AD_UNIT_ID = "ca-app-pub-xxxxxxxxxxxxxxxxxxxx";

private void initAdmob() {
mAdView = findViewById(R.id.adView);
mAdView.setAdUnitId(AD_UNIT_ID);
AdRequest adRequest = new AdRequest.Builder().build();
mAdView.loadAd(adRequest); mAdView.setAdListener(new AdListener() {
@Override
public void onAdLoaded() {
// Code to be executed when an ad finishes loading.
//广告加载完成后,系统会执行 onAdLoaded() 方法。
// 如果您想延迟向 Activity 或 Fragment 中添加AdView的操作(例如,延迟到您确定广告会加载时),可以在此处进行。
} @Override
public void onAdFailedToLoad(int errorCode) {
// Code to be executed when an ad request fails.
//onAdFailedToLoad() 是唯一包含参数的方法。errorCode 参数会指明发生了何种类型的失败。系统将这些可能的类型值定义为AdRequest类中的如下常量:
//ERROR_CODE_INTERNAL_ERROR - 内部出现问题;例如,收到广告服务器的无效响应。
//ERROR_CODE_INVALID_REQUEST - 广告请求无效;例如,广告单元 ID 不正确。
//ERROR_CODE_NETWORK_ERROR - 由于网络连接问题,广告请求失败。
//ERROR_CODE_NO_FILL - 广告请求成功,但由于缺少广告资源,未返回广告。
} @Override
public void onAdOpened() {
// Code to be executed when an ad opens an overlay that
// covers the screen.
//此方法会在用户点按广告时调用。
} @Override
public void onAdClicked() {
// Code to be executed when the user clicks on an ad.
} @Override
public void onAdLeftApplication() {
// Code to be executed when the user has left the app.
//此方法会于 onAdOpened() 之后在用户点击打开其他应用(例如,Google Play)时调用,从而在后台运行当前应用。
} @Override
public void onAdClosed() {
// Code to be executed when the user is about to return
// to the app after tapping on an ad.
//在用户查看广告的目标网址后返回应用时,会调用此方法。应用可以使用此方法恢复暂停的活动,或执行任何其他必要的操作,以做好互动准备。
// 有关 Android API Demo 应用中广告监听器方法的实现方式,请参阅 AdMob AdListener 示例。
}
});
}

关于我

私人博客

技术微信公众号:infree6 或者直接扫码

 

Google Admob移动广告快速集成步骤的更多相关文章

  1. Unity3d开发集成Google Admob广告增加收入

    在Unity游戏中植入广告是Unity 游戏产品增加收入的一种重要方式,常用的广告有谷歌Admob,百度ssp,腾讯广点通,unity公司的unityads等等,而使用的最多的应该属于谷歌Admob, ...

  2. Android Google AdMob 广告接入示例

    Android Google AdMob 广告接入示例 [TOC] 首先请大家放心,虽然 Google搜索等服务被qiang了,但是 广告服务国内还是可以用的,真是普天同庆啊~~~噗! 其实这篇文章也 ...

  3. 【Unity与Android】02-在Unity导出的Android工程中接入Google Admob广告

    我在上一篇文章 [Unity与Android]01-Unity与Android交互通信的简易实现) 中介绍了Unity与Android通讯的基本方法. 这一篇开始进入应用阶段,这次要介绍的是如何在An ...

  4. Google Admob广告Android全攻略1

    一.登录Google AdMob中文官网:http://www.google.cn/ads/admob/   ,注册帐号. 1.点击注册AdMob帐号 2.进入Google帐号注册页面,因为要创建一个 ...

  5. [Android]彻底去除Google AdMob广告

    应用中包含广告是能够理解的,但经常造成用户误点,或者广告切换时造成下载流量,就有点让人不舒服了. 以下就以Google AdMob广告为例,看怎样彻底去除他. 先分析一下Google AdMob的工作 ...

  6. 彻底去除Google AdMob广告

    应用中包含广告是能够理解的,但经常造成用户误点,或者广告切换时造成下载流量,就有点让人不舒服了. 以下就以Google AdMob广告为例,看怎样彻底去除他. 先分析一下Google AdMob的工作 ...

  7. 借助magicwindow sdk plugin快速集成sdk

    到目前为止,Android Studio已经是开发原生Android App的主流IDE,它是由Google官方设计并基于JetBrains的IntelliJ IDEA.我们魔窗开发的sdk也是使用此 ...

  8. 快速集成iOS基于RTMP的视频推流

    前言 这篇blog是iOS视频直播初窥:<喵播APP>的一个补充. 因为之前传到github上的项目中没有集成视频的推流.有很多朋友简信和微博上问我推流这部分怎么实现的. 所以, 我重新集 ...

  9. 怎样用Google APIs和Google的应用系统进行集成(3)----调用Google 发现(Discovery)API的RESTful服务

    说了这么多,那么首先同意我以Google Discovery RESTful服务为例,给大家演示怎样用最普通的Java代码调用Google Discovery RESTful服务. 引言: 在&quo ...

随机推荐

  1. [CodeForces - 1225C]p-binary 【数论】【二进制】

    [CodeForces - 1225C]p-binary [数论][二进制] 标签: 题解 codeforces题解 数论 题目描述 Time limit 2000 ms Memory limit 5 ...

  2. react中使用prop-types检测props数据类型

    一.为什么使用prop-types 在多人开发时,当被人使用自己定义的组件时,有可能出现类型传错的情况,而在自己的组件上加上prop-types,他可以对父组件传来的props进行检查,加入父组件中想 ...

  3. SQL server 2014 安装

    一.规划并成功的完成SQLSERVER 2014的安装 1.规划系统 安装SQL server 前,第一步应该是合理的规划.以下是规划时的任务和要点: ① 当前工作负载的基准 ② 估计工作负载的增长情 ...

  4. Spring注解之@Component详细解析

    @controller 控制器(注入服务) 2.@service 服务(注入dao) 3.@repository dao(实现dao访问) 4.@component (把普通pojo实例化到sprin ...

  5. C#基础之多线程与异步

    1.基本概念 多线程与异步是两个不同概念,之所以把这两个放在一起学习,是因为这两者虽然有区别,但也有一定联系. 多线程是一个技术概念,相对于单线程而言,多线程是多个单线程同时处理逻辑.例如,假如说一个 ...

  6. js中关于带数字类型参数传参丢失首位数字0问题

    最近在项目中遇到一个问题,js中传带有数字的参数时,如果参数开头有数字0,会把0给去掉. 例如: 方法abc(0123456,789); 方法abc中获取的参数0123456就会变为123456. 原 ...

  7. 追踪SQL Server执行delete操作时候不同锁申请与释放的过程

    一直以为很了解sqlserver的加锁过程,在分析一些特殊情况下的死锁之后,尤其是并发单表操作发生的死锁,对于加解锁的过程,有了一些重新的认识,之前的知识还是有一些盲区在里面的.delete加锁与解锁 ...

  8. 11G-使用跨平台增量备份减少可移动表空间的停机时间 XTTS (Doc ID 1389592.1)

    11G - Reduce Transportable Tablespace Downtime using Cross Platform Incremental Backup (Doc ID 13895 ...

  9. linux 启动jar包 指定yml配置文件和输入日志文件

    命令为: nohup java -jar project.jar  --spring.config.location=/home/project-conf/application.yml >  ...

  10. java 后端与前端Date类型与String类型互相转换(使用注解)

    后端返回的类型中,直接定义Date类型,加上此注解,直接将Date类型转成自定义的格式给前端 class TestDateOutput{ @JsonFormat(pattern = "yyy ...