本页面将向您展示如何下载、导入和配置 AppLovin MAX SDK。
您可以通过 Gradle 作为依赖项下载 SDK。 如果您更倾向于手动集成,请遵循此处的说明。
SDK 要求 minSdkVersion 为 24 或以上。
要接收版本更新,请订阅 AppLovin Android MAX SDK GitHub 存储库。
将以下内容添加到您的应用级 build.gradle 文件中:
repositories {
google()
mavenCentral()
⋮
}
dependencies {
implementation 'com.applovin:applovin-sdk:+'
⋮
}
repositories {
google()
mavenCentral()
⋮
}
dependencies {
implementation("com.applovin:applovin-sdk:+")
⋮
}
如果您使用 ProGuard,请注意 AppLovin MAX SDK 和 adapter 已在 AAR 中捆绑了所需的 ProGuard 规则。 您无需向项目中添加更多 ProGuard 规则。
SDK 会收集 Google 广告 ID。
这需要 Android 广告 ID (AAID) 模块 (com.google.android.gms:play-services-ads-identifier)。
请参阅 Google Play 服务依赖项。
buildscript {
repositories {
maven { url 'https://artifacts.applovin.com/android' }
}
dependencies {
classpath "com.applovin.quality:AppLovinQualityServiceGradlePlugin:+"
}
}
buildscript {
repositories {
maven { url = uri("https://artifacts.applovin.com/android") }
}
dependencies {
classpath ("com.applovin.quality:AppLovinQualityServiceGradlePlugin:+")
}
}
build.gradle 文件apply plugin: 'applovin-quality-service'
applovin {
apiKey "«ad-review-key»"
}
plugins {
id("applovin-quality-service")
}
applovin {
apiKey = "«ad-review-key»"
}
您可以在 AppLovin dashboard 的 Account > General > Keys 区域中找到您的 Ad Review Key。
在初始化 SDK 之前,请为 SDK 创建一个初始化配置对象。
此对象允许您配置 SDK 初始化时使用的属性。
这些初始化属性是不可变的,但 AppLovinSdkSettings 除外,它包含可在应用生命周期内更改的可变属性。
// Create the initialization configuration
AppLovinSdkInitializationConfiguration initConfig = AppLovinSdkInitializationConfiguration.builder( "«SDK-key»" )
.setMediationProvider( AppLovinMediationProvider.MAX )
// Perform any additional configuration/setting changes
.build();
// Create the initialization configuration
val initConfig = AppLovinSdkInitializationConfiguration.builder("«SDK-key»")
.setMediationProvider(AppLovinMediationProvider.MAX)
// Perform any additional configuration/setting changes
.build()
您可以在 AppLovin dashboard 的 Account > General > Keys 区域中找到您的 SDK key。
请尽早使用初始化配置对象来初始化 AppLovin SDK(例如,在启动 Activity 或 Application 类的 onCreate() 中)。
这可以最大限度地延长 SDK 缓存 mediated networks 的广告的时间,从而带来更好的用户体验。
public class MainActivity extends Activity
{
protected void onCreate(Bundle savedInstanceState)
{
// Create the initialization configuration
AppLovinSdkInitializationConfiguration initConfig = AppLovinSdkInitializationConfiguration.builder( "«SDK-key»" )
.setMediationProvider( AppLovinMediationProvider.MAX )
.build();
// Initialize the SDK with the configuration
AppLovinSdk.getInstance( this ).initialize( initConfig, new AppLovinSdk.SdkInitializationListener()
{
@Override
public void onSdkInitialized(final AppLovinSdkConfiguration sdkConfig)
{
// Start loading ads
}
} );
}
}
class MainActivity : Activity()
{
override fun onCreate(savedInstanceState: Bundle?)
{
// Create the initialization configuration
val initConfig = AppLovinSdkInitializationConfiguration.builder("«SDK-key»")
.setMediationProvider(AppLovinMediationProvider.MAX)
.build()
// Initialize the SDK with the configuration
AppLovinSdk.getInstance(this).initialize(initConfig) { sdkConfig ->
// Start loading ads
}
}
}
以下是集成示例:
// Create the initialization configuration
AppLovinSdkInitializationConfiguration initConfig = AppLovinSdkInitializationConfiguration.builder( "«SDK-key»" )
.setMediationProvider( AppLovinMediationProvider.MAX )
.setSegmentCollection( MaxSegmentCollection.builder()
.addSegment( new MaxSegment( 849, Arrays.asList( 1, 3 ) ) )
.build() )
.build();
// Configure the SDK settings if needed before or after SDK initialization.
val settings = AppLovinSdk.getInstance( this ).getSettings();
settings.setUserIdentifier( "«user-ID»" );
settings.setExtraParameter( "uid2_token", "«token-value»" );
settings.getTermsAndPrivacyPolicyFlowSettings().setEnabled( true );
settings.getTermsAndPrivacyPolicyFlowSettings().setPrivacyPolicyUri( Uri.parse( "«https://your-company-name.com/privacy-policy»" ) );
settings.getTermsAndPrivacyPolicyFlowSettings().setTermsOfServiceUri( Uri.parse( "«https://your-company-name.com/terms-of-service»" ) );
// Initialize the SDK with the configuration
AppLovinSdk.getInstance( this ).initialize( initConfig, new AppLovinSdk.SdkInitializationListener()
{
@Override
public void onSdkInitialized(final AppLovinSdkConfiguration sdkConfig)
{
// Start loading ads
}
} );
// Create the initialization configuration
val initConfig = AppLovinSdkInitializationConfiguration.builder("«SDK-key»")
.setMediationProvider(AppLovinMediationProvider.MAX)
.setSegmentCollection(MaxSegmentCollection.builder()
.addSegment(MaxSegment(849, listOf(1, 3)))
.build()
)
.build()
// Configure the SDK settings if needed before or after SDK initialization.
val settings = AppLovinSdk.getInstance(this).settings
settings.userIdentifier = "«user-ID»"
settings.setExtraParameter("uid2_token", "«token-value»")
settings.termsAndPrivacyPolicyFlowSettings.apply {
isEnabled = true
privacyPolicyUri = Uri.parse("«https://your-company-name.com/privacy-policy»")
termsOfServiceUri = Uri.parse("«https://your-company-name.com/terms-of-service»")
}
// Initialize the SDK with the configuration
AppLovinSdk.getInstance(this).initialize(initConfig) { sdkConfig ->
// Start loading ads
}