发行说明

使用集合让一切井井有条 根据您的偏好保存内容并对其进行分类。
版本 发布日期 备注
21.3.0 2022 年 10 月 10 日
21.2.0 2022 年 9 月 6 日
  • 广告检查器:添加了通过 Android Sharesheet 导出广告请求日志的 SDK 支持。
21.1.0 2022 年 7 月 14 日
  • WebView 内添加了对广告创收的支持。如需了解详情,请参阅为广告集成 WebView API
  • ResponseInfo 添加了 getResponseExtras(),可能会返回有关广告响应的额外信息。
21.0.0 2022 年 5 月 25 日
  • 重大变更:
    • Google 移动广告 SDK 现在要求所有应用的最低 Android API 级别均为 19。
    • 在之前未明确定义是否可为 null 性的每个方法中添加了 @NonNull 注解。
    • 移除了 AdRequest.Builder.addNetworkExtras() 方法。请改用 AdRequest.Builder.addNetworkExtrasBundle()
    • 移除了以下位置方法:
      • AdRequest.Builder上的setLocation()
      • getLocation()AdRequest
      • MediationAdConfiguration上的getLocation()
  • 添加了清单标志来优化初始化和广告加载,请参阅优化初始化和广告加载指南了解详情。
  • 已弃用 MobileAds.getVersionString()。请改用 MobileAds.getVersion()
  • ResponseInfo 中添加了 getLoadedAdapterResponseInfo() 方法。
  • AdapterResponseInfo 中添加了以下方法:
    • getAdSourceName()
    • getAdSourceId()
    • getAdSourceInstanceName()
    • getAdSourceInstanceId()
  • 在广告检查器中添加了对自定义事件的支持。
20.6.0 2022 年 2 月 22 日
20.5.0 2021 年 11 月 18 日
  • 针对以 API 31 为目标平台的应用,添加了对 Android 12 设备的支持。
  • 针对报告和欺诈防范等用例添加了对应用组 ID 的支持。
20.4.0 2021 年 9 月 22 日
  • 从版本 20.4.0 开始,Google 移动广告 SDK 在 SDK 的清单中添加了 com.google.android.gms.permission.AD_ID 权限,Android 构建工具会自动将该权限合并到应用清单中。如需详细了解 AD_ID 权限声明(包括如何停用),请参阅这篇 Play 管理中心帮助文章
  • FullScreenContentCallback 添加了 onAdClicked() 回调。
  • AdListener 类中针对原生广告格式启用了 onAdClicked() 回调。
20.3.0 2021 年 8 月 23 日
20.2.0 2021 年 6 月 8 日
  • 为 Google Ad Manager 发布商添加了广告检查器(Beta 版)支持。
20.1.0 2021 年 4 月 29 日
20.0.0 2021 年 4 月 5 日
  • 重大变更:
    • 移除了旧版 Interstitial API。
    • 移除了旧版 RewardedVideoAd API。
    • 移除了带有 Publisher 前缀的类(例如:PublisherAdView)。
    • 移除了 CustomRenderedAd
    • 移除了 InstreamAd
    • 移除了 SearchAdRequest
    • 移除了 AdListener.onAdLeftApplication()
    • 移除了 NativeAppInstallAdNativeContentAdUnifiedNativeAd。 现在有一种名为 NativeAd 的原生广告格式。
    • RewardedAd 现在是一个抽象类。使用 RewardedAd.load() 静态方法加载激励广告。
  • 添加了广告检查器(Beta 版)。
  • 弃用了 AdSize.SMART_BANNER,取而代之的是自适应横幅广告
  • 为所有公共 API 添加了显式可为 null 性注解。
19.8.0 2021 年 3 月 15 日
  • 添加了对User Messaging Platform SDK 的依赖项。
  • FullScreenContentCallback 添加了 onAdImpression() 回调。
  • 弃用了 InstreamAd 格式。
  • 中介适配器
    • 弃用了 MediationBannerAdapterMediationInterstitialAdapterMediationNativeAdapter。新适配器应实现 Adapter 类以加载这些格式。
    • 现在,出价适配器可以在 Adapter 类中针对实时出价专用格式实现不同的加载方法。
19.7.0 2021 年 1 月 20 日
  • 重大变更:
    • InterstitialAd
    • RewardedAd
    • NativeAd
    • AppOpenAd
  • 废弃了 CustomRenderedAd
  • 已弃用前缀为 Publisher 的类和软件包,并替换为前缀 AdManager
  • 版本 20.0.0 之前的次要版本。在此版本及之前版本中标记为“已弃用”的所有 API 都将从版本 20.0.0 中移除。如需了解详情,请参阅 20.0.0 版本迁移指南
19.6.0 2020 年 12 月 4 日
  • 弃用了 onAdLeftApplication() AdListener 方法。
  • 修复了 Android 11 设备上的用户在点击广告后被要求选择浏览器的错误。
19.5.0 2020 年 10 月 20 日
  • 横幅广告:系统现在会针对横幅广告调用 onAdImpression() AdListener 方法。
  • 添加了 setCustomHttpMillis() 方法,用于自定义 Google 移动广告 SDK 发出的 HTTPS 调用的超时。
19.4.0 2020 年 9 月 10 日
  • 针对以 API 30 为目标平台的应用,添加了对 Android 11 设备的支持。
  • 开屏广告:更改了 AppOpenAd 格式,更像全屏格式,而不是横幅广告视图。向 AppOpenAd 添加了 getResponseInfo()show() 方法。弃用了 AppOpenAdViewAppOpenAdPresentationCallback 类。
  • 中介:中介状态报告现已可用。使用 ResponseInfo.getAdapterResponses() 可获取参与广告请求的每个广告联盟的响应信息。
  • 旧版激励广告:弃用了 RewardedVideoAd
  • 修复了 MobileAds.initialize() 仅回调一次完成处理程序的错误。现在,每次调用 MobileAds.initialize() 都会调用完成回调函数。
19.3.0 2020 年 7 月 20 日
  • AdError 添加了 getDomain()getCause() 方法。
  • 向所有返回 LoadAdError 的广告格式添加了新的加载失败回调。例如,onAdFailedToLoad(LoadAdError)
  • 弃用了会返回整数的加载失败回调函数,例如:onAdFailedToLoad(int)
  • 激励广告:添加了 onRewardedAdFailedToShow(AdError) 并弃用了 onRewardedAdFailedToShow(int)
  • 激励广告中介:添加了 MEDIATION_SHOW_ERROR 展示错误代码。现在,与中介广告相关的所有展示错误都会针对 AdError.getCode() 返回 MEDIATION_SHOW_ERROR,并且会返回代表底层中介错误的 NonNull AdError.getCause()
19.2.0 2020 年 6 月 18 日
  • 添加了 RewardedInterstitialAd 格式。此功能目前处于非公开 Beta 版测试阶段。请与您的客户经理联系,以申请访问权限。
  • 原生广告:在测试请求中添加了原生验证器界面,以帮助您发现和解决原生广告违规行为。
  • 添加了 MobileAds.disableMediationAdapterInitialization() 方法。在初始化 Google 移动广告 SDK 之前调用此方法,以停用中介适配器初始化。
19.1.0 2020 年 4 月 16 日
19.0.1 2020 年 3 月 18 日
  • 原生广告:修复了使用 NativeCustomTemplateAd 时发生的内存泄漏问题。
19.0.0 2020 年 3 月 2 日
  • 添加了对从 IAB TCF v2.0 和 IAB us_privacy 字符串中读取用户意见征求参数的支持。
  • AdRequest 添加了 setNeighboringContentUrls()getNeighboringContentUrls()
  • 添加了 ResponseInfo 类,该类可提供已加载广告的相关信息。
  • 对于所有广告格式,弃用了 getMediationAdapterClassName(),取而代之的是 getResponseInfo()
  • 原生广告:向 MediaContent 添加了 getDuration()getCurrentTime() 方法。
  • 原生中介:向 UnifiedNativeAdMapper 添加了 getDuration()getCurrentTime() 方法,供适配器实现。
  • 弃用了 AdRequest.Builder.addTestDevice()。请改用 RequestConfiguration.Builder.setTestDeviceIds()
18.3.0 2019 年 11 月 5 日
  • InstreamAd 广告格式添加了 API。此功能目前处于非公开 Beta 版测试阶段。请与您的客户经理联系,以申请访问权限。
  • 自适应横幅广告:更改了 AdSize 类中的自适应横幅广告创建方法。例如,将 AdSize.getCurrentOrientationBannerAdSizeWithWidth() 重命名为 AdSize.getCurrentOrientationAnchoredAdaptiveBannerAdSize()
  • 中介:Google 移动广告 SDK 现在可捕获中介适配器抛出的异常。
  • 激励广告中介:修复了以下问题:如果缓存多个参与中介的激励广告,则只显示一个。
  • 添加了 setTestDeviceIds() 方法,可为所有广告请求启用一次设置测试设备。
18.2.0 2019 年 8 月 29 日
  • AppOpenAd 格式添加了 API。此功能目前处于非公开 Beta 版测试阶段。请与您的客户经理联系,以申请访问权限。
18.1.1 2019 年 7 月 23 日
18.1.0 2019 年 7 月 9 日
18.0.0 2019 年 6 月 17 日
  • 从 Android 支持库迁移到 Jetpack (AndroidX) 库。如需了解详情,请参阅 Google Play 服务版本说明
  • 为了避免从 Play 商店安装应用后首次发生崩溃,此版本要求发布商在其 build.gradle 中声明其他依赖项:
    com.google.android.gms:play-services-measurement:17.0.0
    com.google.android.gms:play-services-measurement-sdk:17.0.0
17.2.1 2019 年 5 月 21 日
  • 修复了源自 android.media.AudioManager.getStreamVolume 的 ANR 问题。
17.2.0 2019 年 3 月 11 日
  • 激励视频广告:添加了一组新的激励广告 API(请参阅激励广告资源包),可供您同时加载多个激励广告。
  • 中介:添加了一组支持初始化的一组新中介适配器 API。实现新 API 的适配器会实现 Adapter 类。
  • 使用 firebase-analytics 以及版本为 17.2.0 的任意广告库(例如,com.google.android.gms:play-services-ads:17.2.0)必须使用 com.google.firebase:firebase-analytics:16.3.0
17.1.3 2019 年 1 月 31 日
  • 使用 firebase-analytics 以及版本为 17.1.3 的任意广告库(例如,com.google.android.gms:play-services-ads:17.1.3)必须使用 com.google.firebase:firebase-analytics:16.3.0
17.1.2 2018 年 12 月 3 日
  • 使用 firebase-analytics 以及版本为 17.1.2 的任意广告库(例如,com.google.android.gms:play-services-ads:17.1.2)必须使用 com.google.firebase:firebase-analytics:16.0.6
17.1.1 2018 年 11 月 12 日
  • 修复了 play-services-adsfirebase-analytics 的某些组合(例如,ads:17.1.0 & analytics:16.0.5)导致了 duplicate entry 编译器错误。 使用 firebase-analytics 以及版本为 17.1.1 的任意广告库(例如,com.google.android.gms:play-services-ads:17.1.1)必须使用 com.google.firebase:firebase-analytics:16.0.5
17.1.0 2018 年 11 月 2 日
17.0.0 2018 年 10 月 5 日
  • Google AdMob 发布商需要在其 AndroidManifest.xml 中指定包含键com.google.android.gms.ads.APPLICATION_ID<meta-data> 标记。如需了解详情,请参阅入门指南
  • 原生广告NativeAppInstallAdNativeContentAd 和关联的 API 已弃用,取而代之的是 UnifiedNativeAd。如需详细了解如何使用新 API,请参阅原生高级广告(统一)
  • 原生广告:添加了“不再显示该广告”功能。
  • 原生广告:当设置 ClickConfirmingView 时,良性警告日志:“UnconfirmedClickListener”不得为 null。
  • 激励广告:在 RewardedVideoAd 中添加了 setAdMetadataListener 方法,用于监听广告元数据的变化。
  • 激励广告:调用 destroy() 将使监听器无效。
  • 弃用了 AdRequest.Builder 上的以下方法。
  • 修复了 onRewardedVideoCompleted() 无法在模拟器上触发的错误。
16.0.0 2018 年 10 月 2 日
  • 没有广告更改。如需了解详情,请参阅 Google Play 服务版本说明
15.0.0 2018 年 4 月 12 日
  • MRAID v3 Beta 版。
  • 原生广告:添加了 Unified Native Ad API。这会将 NativeAppInstallAdsNativeContentAds 合并成一个新类型:UnifiedNativeAd
  • 注意:使用原生广告时,如果用户点击原生广告,日志中会显示以下良性警告:“UnconfirmedClickListener must not be null when ClickConfirmingView is seted”(在设置了 ClickConfirmingView 的情况下,UnconfirmedClickListener 不得为 null)。此警告可以忽略,并将在下一版本中将其移除。
12.0.1 2018 年 3 月 28 日
  • 没有广告更改。如需了解详情,请参阅 Google Play 服务版本说明
12.0.0 2018 年 3 月 20 日
  • 激励视频广告:向 RewardedVideoAdListener 添加了 onRewardedVideoCompleted() 回调方法。
  • 原生广告中介:向 NativeAdMapper 添加了 trackViews() 方法,让适配器能够访问与各个原生广告资源对应的 View 对象。弃用了 trackView(),取而代之的是 trackViews()
11.8.0 2017 年 12 月 18 日
  • 修复了多个问题并进行了一些常规改进。
11.6.0 2017 年 11 月 7 日
  • NativeAppInstallAdNativeContentAd 中添加了 NativeAdViewHolder 类和相关方法。
  • 废弃了 AdLoader.getMediationAdapterClassName(发布商应改用 NativeAppInstallAdNativeContentAd 中同名的方法)。
  • 现在,测试广告会在广告顶部显示标签。如需了解详情,请参阅测试指南
11.4.0 2017 年 9 月 19 日
  • NativeAppInstallAdNativeContentAd 类添加了 getMediationAdapterClassName() 方法。AdLoader 中同名的方法将被弃用。
  • MediationNativeListener 类添加了 onVideoEnd() 方法,向 NativeAdMapper 类添加了 hasVideoContent()setHasVideoContent()setMediaView() 方法,并为 NativeMediationAdRequest 类添加了 isAdMuted() 方法以支持原生视频中介。
  • 移除了 SearchAdRequest 类。
11.2.2 2017 年 9 月 5 日
  • RewardedVideoAd 类添加了新的 loadAd() 方法,可将 PublisherAdRequest 对象传入。
11.2.0 2017 年 8 月 14 日
  • AdLoader 类添加了 loadAds() 方法,让应用能够在单个请求中加载多个不同的广告。
  • 当您将应用升级到 Google 移动广告 SDK 11.2.0 或更高版本时,还必须更新应用的 build.gradle,以指定 compileSdkVersion 至少为 26 (Android O)。这不会改变应用的运行方式。您无需更新 targetSdkVersion
  • 从版本 11.2.0 开始,Google 移动广告 SDK 可通过 Google 的 Maven 代码库获取。如需了解详情,请参阅 Google Play 服务版本说明
11.0.0 2017 年 6 月 7 日
  • AdListener 类添加了 onAdClicked()onAdImpression() 方法。仅针对原生应用安装广告和原生内容广告会调用这些方法。
  • AdViewInterstitialAdNativeExpressAdView 类中移除了 getInAppPurchaseListener()setInAppPurchaseListener() 方法。还移除了相关的应用内购买类。
  • VideoController.VideoLifecycleCallbacks 类添加了 OnVideoMute()OnVideoPause()OnVideoPlay()OnVideoStart() 方法。
  • 添加了向全屏广告启用沉浸模式的功能,方法是向 PublisherInterstitialAdRewardedVideoAd 类添加 setImmersiveMode() 方法。
  • 添加了 OnPublisherAdViewLoadedListener 接口、PublisherAdViewOptions 类和 PublisherAdViewOptions.Builder 类,以用于与原生和横幅广告请求配合使用的 AdLoader
  • 添加了可选的 OnImmersiveModeUpdatedListener 接口,中介适配器可以实现该接口来了解沉浸模式更新。
  • RewardedVideoAd 类添加了 getMediationAdapterClassName() 方法。
  • 添加了 keep 规则,可在使用 ProGuard 时自动保留中介适配器类名称。
10.2.0 2017 年 2 月 15 日
  • Google Play 服务 10.2.x 是第一个不再完全支持 Android 2.3.x (Gingerbread) 的版本。使用 SDK 版本 10.2.x 及更高版本开发的应用需要最低 Android API 级别 14,并且无法安装在 API 级别低于 14 的设备上。如需详细了解您的选项,包括如何构建多个 APK 来扩展应用对 Android Gingerbread 的支持,请参阅 Android 开发者博客
  • 添加了对原生高级内容和自定义模板广告的视频素材资源的支持。
  • PublisherAdView 类添加了 getVideoController()setVideoOptions()getVideoOptions() 方法。
  • 添加了 AdChoicesView 类。
  • NativeAdMapper 类添加了 getAdChoicesContent()setAdChoicesContent() 方法。
  • 针对希望在发出广告请求前选择进行提前初始化的激励视频广告中介适配器,添加了 InitializableMediationRewardedVideoAdAdapter 接口。
  • 在 Google Ad Manager 中添加了对应用内预览和问题排查的支持。
10.0.1 2016 年 11 月 21 日
  • 修复了多个问题并进行了一些常规改进。
9.8.0 2016 年 10 月 24 日
  • MobileAds.Initialize(Context) 已被弃用。Google Ad Manager 发布商在初始化应用时应调用此方法。AdMob 发布商仍应使用 MobileAds.Initialize(Context, String) 并传递其应用代码。
9.6.0 2016 年 9 月 22 日
  • 为原生高级视频广告添加了 MediaView 类。
  • MobileAds 类添加了 openDebugMenu() 方法,用于预览广告素材以及对 Ad Manager 广告单元进行问题排查。
  • 添加了对激励视频广告自定义事件的支持。
9.4.0 2016 年 8 月 1 日
  • 修复了多个问题并进行了一些常规改进。
9.2.0 版 2016 年 6 月 27 日
  • NativeAdOptions.Builder 类添加了 setAdChoicesPlacement() 方法,应用发布商现在可以使用该方法指定其 AdChoices 在原生广告中的位置。
  • 修正了多个错误,使视频广告播放体验得到改进。
9.0.1 版 2016 年 5 月 26 日
  • 解决了 9.0.0 版中引入的 ProGuard 问题。 发布商不再需要针对 com.google.android.gms.common.util.DynamiteApi 设置 keep 选项。
9.0.0 2016 年 5 月 18 日
8.4.0 2015 年 12 月 18 日
  • 添加了公共方法 MobileAds.setAppVolume(),用于向移动广告 SDK 告知应用的当前音量级别。
  • 实施了多项问题修复和改进。
8.3.0 2015 年 11 月 6 日
  • 添加了对激励视频广告的支持。
  • PublisherAdViewPublisherInterstitialAd 添加了 isLoading() 方法,用于检查广告请求是否正在处理中。
  • AdRequest.BuilderPublisherAdRequest.Builder 添加了 setIsDesignedForFamilies() 方法。
  • NativeAdView 添加了 destroy() 方法。
8.1.0 2015 年 9 月 24 日 修复了各种问题。
7.8.0 版 2015 年 8 月 13 日
  • MRAID v2 官方发布版本。
  • AdLoaderAdViewInterstitialAd 添加了 isLoading() 方法,用于检查广告请求是否正在处理中。
  • 废弃了 PublisherAdRequest.Builder#setManualImpressionsEnabled()。改用 PublisherAdView#setManualImpressionsEnabled()
7.5.0 版 2015‑05‑28
  • 添加了对在 AdMob 和 Ad Manager 中投放的应用安装广告和内容原生广告格式的支持。
  • 添加了对自定义原生广告格式的支持,适用于 Ad Manager 预订。
7.3.0 2015‑04‑28 修复了各种问题。
7.0.0 2015‑03‑19
  • PublisherAdRequest.Builder 添加了 addCustomTargeting()addCategoryExclusion() 方法。
  • 修复了在使用手动展示次数统计时导致 PublisherAdView.recordManualImpression() 在 Ad Manager 中记录多次展示的问题。
  • 修复了在 <supports-screens> 标记上使用 android:largestWidthLimitDp 属性时,广告无法正确呈现的问题。
  • AdRequest.BuilderPublisherAdRequest.Builder 添加了 setRequestAgent() 方法。此方法应该用于指示由参与移动广告 SDK 中介的第三方发出广告请求来源。
6.5.87 2014‑12‑08
  • 引入了拆分 JAR 架构 - 现在,Android Studio 开发者只需根据 com.google.android.gms:play‑services‑ads:6.+ 包含 Google Play 服务中的广告部分即可。
    注意:在 XML 中制作横幅广告的应用仍必须引用整个库 com.google.android.gms:play‑services:6.+
  • 修复了各种问题。
6.1 2014‑10‑08
  • com.google.android.gms.ads.MediationAdRequest 添加了 getLocation() 方法。
  • 为插页式广告的关闭按钮添加了内容说明,以方便使用。
  • 库项目正确关联时,不再记录“(未找到 Google Play 资源)”。
  • AdView 添加了 getMediationAdapterClassName(),用于获取当前展示广告的广告联盟中介适配器的类名称。
5.0 2014‑06‑25
  • 新增了可实现自定义事件的 API。
  • 使用 Google Play Billing API 为应用内购买添加了默认的购买流程。
4.4 2014‑05‑07
  • 新增了 Mediation Adapter API。
  • 为手机和平板电脑新增了 320x100 的 LARGE_BANNER 广告格式。
  • 新增了应用内购买插页式广告格式。在 InterstitialAd 上设置 InAppPurchaseListener,以监听应用内购买事件。
  • 修复了由于在没有权限的情况下读取 gservices 导致 SecurityException 崩溃的问题。
4.3 2014‑03‑17
  • 现在,如果传递应用上下文,InterstitialAd 可以正常运行。
  • PublisherAdRequest.Builder 添加了 setContentUrl() 方法。
  • 修复了“未注册服务”时的例外情况。
4.2 2014‑02‑03 修复了各种错误。
4.1 2014‑01‑16
  • 添加了对 Ad Manager 和移动应用版搜索广告的支持。
  • AdRequest.Builder 现在具有 setLocation() 方法。
  • 修复了在请求插页式广告但未在清单中指定 AdActivity 时发生崩溃的问题。
4.0 2013‑10‑31
  • Google Mobile Ads API 现已纳入 Google Play 服务
  • 未来的 Google Mobile Ads API 更新将自动通过 Google Play 服务推送到设备上。
  • 尚不支持 Ad Manager 和移动应用版搜索广告。