集成 Yandex Mediation
移动聚合是一个基于机器学习从各种广告网络中选择广告的平台。 目的是最大化您的收入。 所有设置都是即插即用的,这意味着无需单独调试每个网络。 如果您之前仅在一个 Yandex 网络中使用 Mobile Ads SDK,则无需更改代码中的任何内容即可切换到 Yandex Mediation。 您只需在外部广告网络的网页界面中预先配置单元即可。
初步设置
要准备您的应用,请按照下一节中的步骤操作。
应用要求
- 使用 Android Studio 2021 或更高版本。
- 确保您应用的构建文件使用以下值:
- minSdkVersion 21 或更高版本。
- compileSdkVersion 31 或更高版本。
- 要加载任何类型的广告,您需要使用 Android 4.1 或更高版本。
- 仅针对 Android 5 或更高版本的设备选择视频广告。
- 使用 iOS 13 或更高版本。
- 使用 Xcode 16.4 或更高版本。
在您的 Yandex Advertising Network 账户中设置应用程序
以下是在 Yandex Advertising Network 中注册您的应用的方法:
集成 Yandex Mobile Ads Flutter 插件
要将 Yandex Mobile Ads SDK 与您的 Flutter 应用集成,请使用 Yandex Mobile Ads Flutter 插件。
为您的项目安装 Yandex Mobile Ads Flutter 插件。从项目根目录执行命令:
flutter pub add yandex_mobileads
添加插件后,包含依赖项的行将添加到 pubspec.yaml:
dependencies:
yandex_mobileads: ^8.1.0
特定于平台的设置
使用广告 ID 的权限
广告 ID 是 Google Play 服务提供的唯一标识符,用于向选择个性化广告的用户展示广告。 用户可以选择退出广告个性化设置或在设置中重置其 ID。 在这种情况下,广告网络将无法使用该 ID 为用户选择相关广告。
如果需要,您可以删除该权限。 例如,如果政策不允许使用 ID 来选择广告,例如家庭政策。
要防止将该权限添加到应用程序的主清单中,请将以下代码添加到 AndroidManifest.xml 中:
<manifest>
<application>
<uses-permission android:name="com.google.android.gms.permission.AD_ID" tools:node="remove"/>
</application>
</manifest>
重要
缺乏此权限和对 ID 的访问权限可能会降低广告的相关性,从而降低您的收入。
COPPA 设置
您可以在初始化 SDK 之前手动或使用 AndroidManifest.file 设置个人数据隐私策略。
自动初始化时,在 AndroidManifest.xml 中添加以下代码,以通知 Yandex Mobile Ads SDK 该应用被儿童使用:
<manifest>
<application>
<!-- Disable the use of child's personal data for app monetization. -->
<meta-data
android:name="@string/yandex_mobileads_age_restricted_user"
android:value="true" />
</application>
</manifest>
SKAdNetwork 支持
在应用的 Info.plist 文件中添加广告网络标识符。 有关说明,请参阅 SKAdNetwork。
集成聚合
添加单独的适配器
重要
确保将您使用的 Yandex Mediation适配器更新至最新版本。 旧版本可能会导致适配器集成错误,从而导致您的广告无法投放。
要添加单独的适配器,请按照以下说明启用 Yandex Ads SDK 和相关适配器:
-
在 Yandex Advertising Network 界面中设置聚合。
-
将 YandexMobileAds 依赖项添加到应用模块中的 build.gradle 文件中:
dependencies { ... implementation 'com.yandex.android:mobileads:x.x.x' // 添加支持的版本 // 添加 Yandex Mediation 适配器的依赖项。 } -
将 Java 8 支持添加到应用程序的 Android 模块的 build.gradle 文件中:
android { compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 } } -
将以下代码添加到应用的 Android 模块的 build.gradle 文件中:
// IronSource maven { url 'https://android-sdk.is.com/' } // Pangle maven { url 'https://artifact.bytedance.com/repository/pangle' } // Tapjoy maven { url "https://sdk.tapjoy.com/" } // Mintegral maven { url "https://dl-maven-android.mintegral.com/repository/mbridge_android_sdk_oversea" } // Chartboost maven { url "https://cboost.jfrog.io/artifactory/chartboost-ads/" } // AppNext maven { url "https://dl.appnext.com/" } -
设置使用广告 ID 的权限(适用于运行 4.5.0 以下 SDK 版本的应用)。
如何设置使用广告 ID 的权限
广告 ID 是 Google Play 服务提供的唯一标识符,用于向选择个性化广告的用户展示广告。用户可以选择退出广告个性化设置或在设置中重置其 ID。在这种情况下,广告网络将无法使用该 ID 为用户选择相关广告。
如果您的应用运行低于 4.5 的 Yandex Mobile Ads SDK 版本,请将 com.google.android.gms.permission.AD_ID 添加到 AndroidManifest.xml 文件中:
<manifest> <application> <!-- For apps targeting Android 13 or higher & Yandex Mobile Ads SDK versions lower than 4.5.0 --> <uses-permission android:name="com.google.android.gms.permission.AD_ID"/> </application> </manifest>从版本 4.5.0 开始,Yandex Mobile Ads SDK 默认添加 com.google.android.gms.permission.AD_ID。因此,您不必在应用程序的主清单中指定它。该权限允许您使用广告 ID 从广告网络中选择更相关的广告。
如果需要,您可以删除该权限。例如,如果政策不允许使用 ID 来选择广告,例如家庭政策。
要防止将该权限添加到应用程序的主清单中,请将以下代码添加到 AndroidManifest.xml 中:
<manifest> <application> <uses-permission android:name="com.google.android.gms.permission.AD_ID" tools:node="remove"/> </application> </manifest>重要
缺乏此权限和对 ID 的访问权限可能会降低广告的相关性,从而降低您的收入。
-
使用适当的包逐一添加适用的适配器。
初始化 Yandex Mobile Ads SDK 库
成功初始化 Yandex Mobile Ads SDK 是正确集成库的重要条件。
默认情况下,对于 Android 系统,SDK 会在您的应用启动时自动初始化。这会加速广告加载,从而增加您的变现收入。
默认情况下,对于 iOS 系统,SDK 初始化在广告加载之前自动进行,但手动初始化将加快第一个广告加载的速度,从而增加变现收入。
将 YandexAds.initialize();调用添加到应用小部件的 initState:
@override
void initState() {
super.initState();
// 在 init sdk 之前配置用户隐私数据策略
YandexAds.initialize();
}
如果您的应用需要设置 数据使用隐私政策,请在初始化 Yandex Mobile Ads SDK 之前执行此操作。
您可以在初始化 SDK 之前手动或使用 AndroidManifest.file 设置个人数据隐私策略。