Android App 设置 Google AdMob 广告

更新日期: 2020-02-08 阅读次数: 1932 字数: 498 分类: Android

前提条件

需要应用先上架 Google Play.

获取 APP ID 及 广告单元 ID

登陆 AdMob 后台,https://apps.admob.com/v2/home

  • 选择要添加 AdMob 广告的应用,打开“广告单元”菜单
  • 添加广告单元,或者打开已有的广告单元
  • 在实现说明中,获取应用 ID 及广告单元 ID

引入 AdMob SDK

即,Google Mobile Ads SDK

参考文档: https://developers.google.com/admob/android/quick-start?hl=zh-CN#import_the_mobile_ads_sdk

在 app-level build.gradle 的 dependencies 添加依赖:

implementation 'com.google.android.gms:play-services-ads:18.3.0'

在 AndroidManifest.xml 中设置 AdMob App ID

<manifest>
    <application>
        <meta-data
            android:name="com.google.android.gms.ads.APPLICATION_ID"
            android:value="ca-app-pub-xxxxxxxxxxxxxxxx~yyyyyyyyyy"/>
    </application>
</manifest>

初始化 Mobile Ads SDK

kotlin 代码。

setContentView 中进行初始化:

MobileAds.initialize(this) {}

需要引入

import com.google.android.gms.ads.MobileAds;

引入横幅广告

layout XML 中添加:

<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_centerHorizontal="true"
      android:layout_alignParentBottom="true"
      ads:adSize="BANNER"
      ads:adUnitId="ca-app-pub-3940256099942544/6300978111">
  </com.google.android.gms.ads.AdView>

这个 adUnitId 是测试 ID,在调试时,需要使用这个。只有发布时才能使用真实广告单元 ID。

加载广告:

// 依赖
import com.google.android.gms.ads.AdRequest
import com.google.android.gms.ads.AdView

// 添加属性
lateinit var mAdView : AdView

// 加载广告
mAdView = findViewById(R.id.adView)
val adRequest = AdRequest.Builder().build()
mAdView.loadAd(adRequest)

adSize 的值

SMART_BANNER。

自适应横幅广告与智能横幅广告的区别?因为文档中说自适应横幅广告将替代智能横幅广告。

智能横幅可实现三种广告高度:

  • 广告高度 32 dp,屏幕高度 ≤ 400 dp
  • 广告高度 50 dp,屏幕高度 > 400 dp 且 ≤ 720 dp
  • 广告高度 90 dp,屏幕高度 > 720 dp

自适应横幅广告参考 https://developers.google.com/admob/android/banner/adaptive

优化了智能横幅只能三种固定高度的问题。但是看起来实现太复杂,所以还是使用智能横幅 SMART_BANNER 吧。

如何自动切换 adUnitId

在 debug 和 release 时,使用不同的 adUnitId。

参考:Debug 和 Release 版本自动切换不同的 AdMob ad unit id 配置

实际广告效果

添加测试广告代码之后,显示效果如下:

Android App 设置 Google AdMob 广告

真机不显示正式广告

但是,我换成正式广告 ID 之后,发现 AdMob 广告在真机上无法显示

领取阿里云/腾讯云服务器优惠券

关于作者

我是来自山东烟台的一名开发者,喜欢瞎折腾,顺便记记笔记。有敢兴趣的话题,欢迎加微信 zhongwei 聊聊, 查看更多联系方式。 白天写程序,晚上哄熊孩子,可能回复有点慢,见谅。同时也欢迎关注我的微信公众号“大象工具”: 大象工具微信公众号

tags: Google AdMob 广告 Android 广告平台

相关文章

谈笑风生

cocos

你好,请教个问题哈,我现在接入了全屏广告和视频广告,不开 xxx 测试广告 都显示不了,您没有这问题吗?有可能是什么问题您知道吗

大象

没有遇到过,我这里测试广告任何时候都能显示。。。

爱评论不评论

近期节日

2020年10月23日 霜降
2020年10月24日 联合国日
2020年10月25日 重阳节
2020年10月31日 世界勤俭日
2020年11月01日 万圣节
2020年11月07日 立冬
2020年11月08日 中国记者日
2020年11月10日 世界青年节
2020年11月11日 光棍节
2020年11月14日 世界糖尿病日
2020年11月17日 国际大学生节
2020年11月20日 国际儿童日
查看更多节日