AppLovin MAX 集成手册

一、 集成前准备
  1. 创建 AppLovin 账户
  2. 在 MAX 后台添加应用
    • 登录 AppLovin Dashboard
    • 进入 “Apps” 页面,点击 “Add App”。
    • 选择平台(iOS / Android),填写应用信息(名称、包名/Bundle ID、商店链接等)。
  3. 获取 SDK 密钥
    • 应用创建后,在应用的 “Integration” 标签页中,找到你的 SDK Key。这是初始化 SDK 的必需凭证。
二、 SDK 集成(以 Android 和 iOS 为例)

通用步骤:在广告网络中配置 AppLovin MAX

在您希望聚合的广告网络后台(如 Unity LevelPlay, IronSource, Meta Audience Network等),需要将您的 AppLovin MAX 应用添加为发布商,并获取对应的 Network KeyPlacement ID,以便在 MAX 后台进行配置。

Android 集成
  1. 项目级 build.gradle
allprojects {
    repositories {
        google()
        mavenCentral()
        // 添加 AppLovin 仓库
        maven {
            url "https://artifacts.applovin.com/android"
            credentials {
                username "applovin"
                password "YOUR_SDK_TOKEN" // 在 Dashboard > Account > Keys 中获取
            }
        }
    }
}
  1. 应用级 build.gradle (app/build.gradle)
android {
    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }
}
dependencies {
    implementation 'com.applovin:applovin-sdk:12.+.+' // 使用最新版本
    // 可选:集成特定广告网络适配器,如 Meta
    implementation 'com.applovin.mediation:facebook-adapter:6.+.+'
}
  1. 更新 AndroidManifest.xml
<manifest ...>
    <!-- 必需的权限 -->
    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <!-- 可选权限,用于增强广告投放 -->
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
    <!-- 对于 Google Play,如果需要广告ID -->
    <uses-permission android:name="com.google.android.gms.permission.AD_ID" />

    <application ...>
        <!-- 初始化 SDK 的 Meta Data -->
        <meta-data
            android:name="applovin.sdk.key"
            android:value="YOUR_SDK_KEY" /> <!-- 替换为你的 SDK Key -->

        <!-- 可选:设置测试设备 -->
        <meta-data
            android:name="applovin.sdk.test_device_ids"
            android:value="YOUR_TEST_DEVICE_ID" /> <!-- 通过 Logcat 获取 -->

        <!-- 可选:保持屏幕常亮(用于激励视频) -->
        <meta-data
            android:name="applovin.sdk.keep_screen_on"
            android:value="true"/>
    </application>
</manifest>
iOS 集成 (Swift - CocoaPods)
  1. 安装 CocoaPods
    • 确保已安装 CocoaPods。
  2. Podfile 配置
platform :ios, '13.0' # MAX 12.x+ 要求 iOS 13.0+
use_frameworks!

target ‘YourApp’ do
    pod 'AppLovinSDK', '12.+.+' # 使用最新版本
    # 可选:集成特定广告网络适配器,如 Meta
    pod 'AppLovinMediationFacebookAdapter', '6.+.+'
end
    • 运行 pod install
  1. 更新 Info.plist
    • 添加 AppLovinSDKKey 键,值为你的 SDK Key
    • 添加 SKAdNetworkItems 以支持 SKAdNetwork(对于 iOS 14+ 归因至关重要)。AppLovin 提供需添加的列表,可在 Dashboard 或文档中找到。
  2. 初始化 SDK (在 AppDelegate.swift 中)
import AppLovinSDK

@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {
    func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
        // 初始化 SDK
        let configuration = ALSdkConfiguration()
        ALPrivacySettings.setHasUserConsent(true/false) // 遵循 GDPR
        ALPrivacySettings.setDoNotSell(true/false)      // 遵循 CCPA

        ALSdk.shared()?.initialize(with: configuration) { configuration in
            // SDK 初始化完成,可以开始加载广告了
        }
        return true
    }
}
三、 实现广告单元

MAX 支持多种广告格式:横幅插页式激励视频原生广告应用开场广告

通用模式:

  1. 在 MAX 后台创建广告单元:进入应用的 “Ad Units” 页面,创建相应类型的广告单元,并获取 Ad Unit ID
  2. 在代码中加载和显示广告
示例:加载和显示激励视频 (Android - Kotlin)
import com.applovin.mediation.MaxAd
import com.applovin.mediation.MaxAdListener
import com.applovin.mediation.MaxReward
import com.applovin.mediation.ads.MaxRewardedAd

class YourActivity : AppCompatActivity() {

    private var rewardedAd: MaxRewardedAd? = null
    private val rewardedAdUnitId = "YOUR_REWARDED_AD_UNIT_ID" // 替换

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        // ... 你的代码

        rewardedAd = MaxRewardedAd.getInstance(rewardedAdUnitId, this)
        rewardedAd?.setListener(object : MaxAdListener {
            override fun onAdLoaded(ad: MaxAd?) {
                // 广告加载成功,可以展示给用户
            }
            override fun onAdLoadFailed(adUnitId: String?, error: MaxError?) {
                // 广告加载失败
            }
            override fun onAdDisplayed(ad: MaxAd?) {}
            override fun onAdHidden(ad: MaxAd?) {
                // 广告关闭后,重新加载下一个广告
                rewardedAd?.loadAd()
            }
            override fun onAdClicked(ad: MaxAd?) {}
            override fun onAdDisplayFailed(ad: MaxAd?, error: MaxError?) {}
        })
        // 加载第一个广告
        rewardedAd?.loadAd()
    }

    fun showRewardedVideo() {
        if (rewardedAd?.isReady == true) {
            rewardedAd?.showAd()
        }
    }
}
四、 在 MAX 后台配置瀑布流/竞价

这是 MAX 的核心功能,用于优化收益。

  1. 进入广告单元详情:在 “Ad Units” 页面,点击你创建的广告单元。
  2. 配置网络:在 “Networks” 部分,点击 “Add Network”。
  3. 选择类型
    • Bidding (竞价):建议首选。支持 Meta、Google、Unity 等主流网络的实时竞价。
    • Waterfall (瀑布流):传统的优先级分层模式。
  4. 填写参数:输入从对应广告网络获取的 Placement IDeCPM 值。
  5. 排序:通过拖拽调整网络优先级(对于瀑布流尤为重要)。
五、 测试与上线
  1. 测试模式:在初始化 SDK 或加载广告时,MAX 会自动将你的设备识别为测试设备(如果未在商店上线)。你可以在 Logcat 或 Xcode 控制台中看到测试广告标识。
  2. 获取测试设备 ID:运行应用,在日志中搜索 “To get test ads”,会输出你的设备 ID。可将其添加到 AndroidManifest.xml 或 MAX 后台的 “Test Devices” 中,确保始终收到测试广告。
  3. 验证集成:使用 MAX 后台的 “Mediation Debugger” 工具,可以实时查看广告加载流程和竞胜者信息。
  4. 上线前检查
    • 移除所有测试设备 ID 的硬编码。
    • 确保 GDPR 和 CCPA 合规逻辑已正确实施。
    • 确认所有广告网络的配置(尤其是 Placement ID)已从测试环境切换为生产环境。
六、 高级功能与最佳实践
  • 信号采集 (Signal Collection):确保在初始化 SDK 前正确配置所有必需的适配器和 SDK(如 Google UMP, 用户的 IDFA/GAID 权限弹窗),以便向竞价方发送完整的用户信号,提升竞价竞争力。
  • 收入分析:利用 MAX 后台的 “Reporting” 面板分析各广告单元、国家、网络的收入表现。
  • 自动优化:开启 “Auto Refresh” 和 “Smart Optimization” 功能,让 MAX 自动调整瀑布流以最大化收益。
  • 使用 SDK 回调:正确处理 onAdHiddenonAdLoadFailed,确保广告循环加载,并为用户提供无缝体验。

重要链接:

请注意,SDK 版本和具体配置可能随时更新,请务必以上述官方文档为最新参考。

Logo

这里是一个专注于游戏开发的社区,我们致力于为广大游戏爱好者提供一个良好的学习和交流平台。我们的专区包含了各大流行引擎的技术博文,涵盖了从入门到进阶的各个阶段,无论你是初学者还是资深开发者,都能在这里找到适合自己的内容。除此之外,我们还会不定期举办游戏开发相关的活动,让大家更好地交流互动。加入我们,一起探索游戏开发的奥秘吧!

更多推荐