集成 Yandex Mobile 聚合
重要
请确保更新至最新的适配器版本(Yandex Mobile 聚合)。 否则可能会因适配器集成不当而出现错误,导致广告无法投放。
Yandex Mobile 聚合 是一个使用机器学习算法从各种网络自动选择广告的平台,可帮助您最大限度地提高收入。 所有设置均已预配置,您可以立即开始使用,而无需单独设置每个网络。 如果您一直在单一 Yandex 网络中使用 Mobile Ads SDK,则迁移到 Yandex 聚合不需要更改代码。 您只需预设第三方广告网络的网页界面的相关部分即可。
前提条件
要准备您的应用,请按照接下来的章节中描述的步骤进行操作。
应用要求
- 使用 Android Studio 2021 或更高版本。
- 检查您应用的构建文件是否使用以下值:
- minSdkVersion 23 或更高版本。
- compileSdkVersion 34 或更高版本。
- 使用 iOS 13 或更高版本。
- 使用 Xcode 16.4 或更高版本。
在您的 Yandex Advertising Network 账户中设置应用
以下是在 Yandex Advertising Network 中注册您的应用的方法:
集成 Yandex Mobile Ads React Native 插件
要将 Yandex Mobile Ads SDK 集成到 React Native 应用中,请使用 Yandex Mobile Ads React Native 插件。
在您的项目中安装 Yandex Mobile Ads React Native 插件。从项目的根文件夹运行以下命令:
npm install yandex-mobile-ads
添加插件后,package.json 文件中会出现具有以下依赖项的字符串:
"dependencies": {
"yandex-mobile-ads": "^8.1.0"
}
特定于平台的设置
使用广告 ID 的权限
广告 ID 是 Google Play 服务提供的唯一 ID。 它们用于向同意个性化广告的用户投放广告。 用户可以选择退出个性化广告或在设置中重置 ID。 在这种情况下,广告网络无法使用它来投放相关广告。
如有必要,您可以移除该权限。 例如,如果某项政策(例如家庭政策)不允许使用 ID 来投放广告,您可能需要执行此操作。
要防止将权限添加到应用程序的主清单中,请将以下内容添加到 AndroidManifest.xml 文件中:
<manifest>
<uses-permission android:name="com.google.android.gms.permission.AD_ID" tools:node="remove"/>
</manifest>
重要
缺少 ID 使用权限和访问权限可能会影响您的收入,因为您的应用可能会投放相关性较低的广告。
COPPA 设置
您可以使用 AndroidManifest.file 或在手动初始化 SDK 之前设置这些政策。
如果选择了自动初始化,请将以下代码添加到 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 Mobile 聚合)。 否则可能会因适配器集成不当而出现错误,导致广告无法投放。
若要连接单独的适配器,请启用 Yandex Ads SDK,然后按照每个适配器的具体说明进行操作:
-
在 Yandex Advertising Network 界面中设置聚合。
-
将 YandexMobileAds 依赖项添加到应用模块中的 build.gradle 文件中:
dependencies { ... implementation 'com.yandex.android:mobileads:x.x.x' // add supported version // 添加 Yandex Mobile 聚合适配器的依赖项。 } -
将 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 会在 加载广告前 自动初始化。然而,手动初始化可以加快首个广告的加载速度,从而增加您的变现收入。
请在主组件的 useEffect 钩子中添加 MobileAds.initialize(); 调用:
React.useEffect(() => {
(async () => {
// 在 init sdk 之前配置用户隐私数据策略
await MobileAds.initialize();
})();
});
如果您需要在应用中设置个人数据隐私政策,请确保在初始化 Yandex Mobile Ads SDK 之前执行此操作。
您可以使用 AndroidManifest.file 或在手动初始化 SDK 之前设置这些政策。