跳转到主要内容
你需要一个发布方账号来获取 publisherToken。

1. 添加 SDK

SDK 发布在 Maven Central。确认仓库中有 mavenCentral(),然后在应用模块的 build.gradle.kts 中添加依赖:
video-media3 是 Media3 播放器(ExoPlayer、MediaController)的适配器。你的内容在这样的播放器中播放时添加它;使用的是你应用自己的 Media3 版本。请固定确切版本:SDK 在 1.0 之前,新的次版本可能改变 API,由你决定何时升级。
SDK 依赖 KontextKit,一组共享的 Android 基础组件(安装 id、设备信息、广告标识符、同意)。Gradle 会自动拉取。两者都不需要你添加 R8 规则:其中没有任何东西通过反射访问。

2. 启动时初始化

在你的 Application.onCreate 中调用一次 initialize。它保存配置并在后台联系服务器;没有任何东西等待它。
在 manifest 中用 <application android:name=".App" …> 注册这个类。想知道结果,传入一个监听器,或在协程中调用 awaitInitialization():
第二次调用会被忽略。初始化完成前发出的广告请求只是等待它,所以你可以立即创建 VideoAds。
请在主线程上调用 KontextVideo、VideoAds 和 VideoAd,这在 Activity、Fragment、Compose 和 lifecycleScope 中是默认的。监听器和回调也在主线程上送达。

配置

集成期间使用 LogLevel.DEBUG;它会把每次请求、每个广告和每个事件记录到 Logcat,标签为 KontextVideo(adb logcat -s KontextVideo)。

3. SDK 在你的 manifest 中添加了什么

无需配置:manifest merger 会为你添加这些。
  • INTERNET 和 ACCESS_NETWORK_STATE,用于广告请求和连接类型。
  • com.google.android.gms.permission.AD_ID,让 SDK 能在 Android 13 及以上读取广告标识符。没有运行时弹窗;SDK 从 Google Play 服务读取它,观众选择退出时不发送任何标识符。见 IFA 与 ATT。
  • SDK 用于线性广告的自有 Activity。
Android 没有 App Tracking Transparency,也没有 SKAdNetwork:没有 Info.plist 步骤,也没有需要添加的归因标识符。