构建和使用支持运行时的 SDK

1
Key concepts
2
Set up your development environment
3
Build an RE SDK
4
Consume the RE SDK
5
Testing, and building for distribution

构建和配置测试应用

本部分介绍了如何设置和准备应用以使用支持运行时的应用 用于本地测试的 SDK。

准备应用

首先,创建一个单独的独立项目或模块。

在这种情况下,应用不包含 SDK 代码;它会将其声明为 Maven 依赖项。

构建使用支持运行时的 SDK 的应用需要 Android Studio Ladybug Canary 1 或更高版本,以及 Android Gradle 插件 (AGP) 8.7.0-alpha01 或更高版本。

  1. 按照上述相同的步骤设置 开发环境用于测试的设备/模拟器
  2. 使用 第 3 步:准备 SDK 部分

    # This enables the Privacy Sandbox for your project on Android Studio.
    android.experimental.privacysandboxsdk.enable=true
    android.experimental.privacysandboxsdk.requireServices=false
    
  3. 将 Privacy Sandbox Maven 网址添加到项目的顶级 build.gradle 文件。

        allprojects {
            repositories {
                google()
                maven {
                    url "https://maven.privacysandbox.com/v1/repository"
                    }
                }
            }
    
  4. 保留对现有广告库(您的运行时感知型 SDK)Maven 目标的 Maven 依赖项。

  5. 将 privacySandbox 代码块添加到项目 build.gradle 中,并在其中添加依赖于 SDK 库的依赖项,并将 enable true 设为 true

    plugins {
        id 'com.android.application'
        id 'org.jetbrains.kotlin.android'
    }
    
    android {
        //...
        privacySandbox {
            enable true
        }
        //...
    }
    
    dependencies {
        // SDK library dependency
        implementation(<maven coordinates to SDK library>)
    }
    
  6. 现在,应用程序可以使用 SDK 的 API, 请参阅“API 使用”部分

构建应用

您可以像往常一样将应用构建为 Android App Bundle (AAB) 格式。

在本地测试您的 SDK

如需运行测试应用,请将支持运行时的 SDK 和应用安装到测试中 设备或模拟器。

  1. 打开测试应用的 Android Studio 项目。
  2. 依次进入 Run > Edit Configurations。“Run/Debug”配置窗口 。您可以部署为“默认 APK”或“APK from Bundle”。
  3. Launch Options 下,将 Launch 设为 Specspecified Activity
  4. 点击活动旁边的三点状菜单,然后选择“主菜单” 您客户端的活动。
  5. 点击 Apply,然后点击 OK
  6. 点击 Run,在测试设备上安装客户端应用和 SDK。
。 <ph type="x-smartling-placeholder">

构建 SDK 进行分发

您需要将 SDK 构建为 Android SDK Bundle (ASB) 然后才能将其发布到应用商店ASB 是未签名的发布内容 与 Android App Bundle 等效的软件包。

ASB 或其衍生 Android SDK Archive (ASAR) 会由 Bundletool 转换为一组可安装的 APK。应用广告系列 开发者可以直接在 Android Studio 中使用 BundleTool(目前为 Canary 版) 以输出所有 APK 变体。

Bundletool 接受 AAB 和 ASB 作为参数,并且可以输出一组 APK 变体:

  1. 为在 SDK 运行时向后兼容模式下运行而构建的 APK, 与 SDK 运行时不兼容的设备(Android 13 及更低版本)。 此 APK 包含应用和 SDK 所需的所有代码。
  2. 此 APK 旨在针对与 Android Auto 应用兼容的设备运行 SDK 运行时模式, SDK 运行时(Android 14 及更高版本)。此 APK 仅包含 应用代码,其中包含支持运行时的 SDK 的 API 存根。
  3. 包含支持运行时的 SDK 代码的 SDK APK,应在安装之前 上一步中所述的应用 APK。

您可以通过以下两种方式构建 ASB:

  • Android Studio <ph type="x-smartling-placeholder">
      </ph>
    1. 构建您的项目。这可以通过调用 Build > 重新构建项目。
    2. ASB 文件位于支持运行时的 ASB 模块中,位于 build/outputs/asb/single/<your-asb-module-name>.asb
  • bundletool 的命令行 - 遵循 这些说明

您必须使用上传密钥为 SDK 签名,然后才能发布 SDK。使用此 上传密钥为您的 ASB 签名,以将其上传到 SDK 管理中心。Google 使用 上传证书,以验证您的身份。

以下步骤概述了为 ASB 签名所需执行的操作:

  1. 生成密钥库和上传密钥。这等同于 为应用生成密钥库和上传密钥的步骤。
  2. 使用上传密钥为 ASB 签名。为此,请添加 signedConfig 块 添加到 build.gradle 文件中,指定新创建的密钥和密钥库:
android {
  signingConfig {
    storeFile file(path-to-keystore.jks)
    storePassword "keystorePassword"
    keyAlias "UploadKey"
    keyPassword "keyPassword"
  }
}

应用商店可以制定不同的策略,利用这些组件来支持 支持运行时的应用分发。SDK 运行时可持续与应用配合使用 商店以扩展对支持运行时的 SDK 的支持。

第 4 步:使用支持运行时的 SDK