Google 移动广告 SDK 精简版

与所有 Android 库一样,Google Play 服务 SDK 的集成会导致应用增大。但 Google 移动广告 SDK 精简版不同,它是一种轻量级版本的 Google 移动广告 SDK,目的就是减少这种影响。相比之下,常规 SDK 通常要比它大数倍。

除了规模减小外,使用 SDK 精简版还可减少应用中引用的方法总数。在旧版本的 Android 中进行部署时,这点特别有用,因为此时开发者可能会遇到 64K 引用限制

以下代码说明如何在您的应用中通过配置 Gradle 实现 SDK 精简版的集成:

dependencies {
    implementation 'com.google.android.gms:play-services-ads-lite:24.3.0'
}

精简版 SDK 的局限性

SDK 精简版只能在通过 Google Play 商店分发的应用中使用。

与其他 Google Play 服务不同,Google Play 服务 APK 中的标准 Google 移动广告 SDK 实现也包含在 Google Play 服务客户端库中。这就使得没有 Google Play 服务 APK 的设备也能支持该 SDK。在运行时,该 SDK 会比较客户端库和 Google Play 服务 APK 的版本,并使用较新的版本。

精简版 SDK 会从客户端库中剥离 Google 移动广告 SDK 实现,仅保留指向 Google Play 服务 APK 的接口。精简版 SDK 依赖于 APK 的实现。如果您在 Google Play 商店之外部署应用,则无法保证用户设备上安装了 Google Play 服务 APK。

在安装了最新版 Google Play 服务的设备上,精简版 SDK 的行为与标准版 SDK 的行为完全相同。不过,在 Google Play 服务过时或不存在的设备上,精简版 SDK 可能会引用 Google Play 服务 APK 中不可用或已更改的 API。这会导致系统执行空操作并记录错误,从而可能导致广告无法投放到这些设备。

精简版 SDK 发布频率

从版本 24.1.0 开始,play-services-ads-lite 制品不再以与 play-services-ads 相同的频率发布。此更改可实现更平稳、更稳定的 SDK 实现推出。 Lite SDK 大约每隔两个 SDK 版本发布一次。

如果项目同时依赖于 play-services-ads-lite 24.0.0 版或更低版本和 play-services-ads 24.1.0 版或更高版本,则在应用编译期间会遇到 Duplicate class 错误。如需解决此错误,请仅使用 play-services-adsplay-services-ads-lite 工件。