コンテンツにスキップ

アドバンス設定

広告プレースメント

各広告ユニットにプレースメント名を設定することができます(例:「Rewarded VideoLevels」、「INTER_levelEnd」、「RewardedVideoCoinStore」など)。 これにより、異なるプレースメントカテゴリーの統計を集計することができます。 以下のスニペットは、さまざまな広告フォーマットのプレースメント名を設定する方法を示しています。

バナー / MREC

adView.setPlacement( "«placement»" );
adView.loadAd();

インタースティシャル広告

interstitial.showAd( "«placement»" );

リワード広告

rewardedAd.showAd( "«placement»" );

ネイティブ広告

nativeAdLoader.setPlacement( "«placement»" );

ネイティブ広告(Ad Placer)

MaxAdPlacerSettings settings = new MaxAdPlacerSettings( "«ad-unit-ID»" );
settings.setPlacement( "«placement»" );

音声をミュート

アプリを起動する際に、一部のメディエーションSDKネットワークの音声をミュートすることができます。 AppLovin SDKをとおしてこの機能をサポートしているネットワークは、Google Bidding、 Google AdMob 、AppLovin、DT Exchange、 Google アド マネージャー、LINE、Mintegral、Tencent、Verveです。 他のネットワークについては、この機能が利用可能かどうか、またそのアクセス方法について、ネットワークのアカウントチームにお問い合わせください。

以下のコードスニペットは、この機能をサポートするネットワークで音声をミュートする方法を示しています。

AppLovinSdk sdk = AppLovinSdk.getInstance( context );
sdk.getSettings().setMuted( true ); // to mute
sdk.getSettings().setMuted( false ); // to unmute

Verboseログを有効化

SDKの設定オブジェクトでブーリアンフラグを設定し、verboseログを有効にします。

プログラムで

AppLovinSdk.getInstance( context ).getSettings().setVerboseLogging( true );

Androidマニフェスト

アプリケーションのAndroidマニフェストファイルを編集することで、verboseログを有効にすることも可能です。 これには、以下のように<meta-data>要素を追加します。

<application>
<meta-data android:name="applovin.sdk.verbose_logging" android:value="true" />
</application>

検証

Verboseログを正常に有効化したことを確認するには、AppLovin SDKのログの初期化セクションに、Verbose Logging On: trueと表示される行を確認してください。

AppLovin SDK
Version: 11.4.2
Verbose Logging On: true

AppLovin SDKは、そのログに「/AppLovinSdk: [AppLovinSdk]」というタグを付けます。

クリエイティブIDとネットワーク名

さまざまなメディエーションネットワークから表示された広告のクリエイティブIDとネットワーク名を取得できます。 詳細については、the Creative Debugger documentation を参照してください。

DSP名

AppLovin Exchangeから配信されたMAX広告のDSP(デマンドサイドプラットフォーム)の名前を取得するには、広告のgetDspName()メソッド呼び出します。

@Override
public void onAdLoaded(final MaxAd ad)
{
System.out.println( "AppLovin Exchange DSP name: " + ad.getDspName() );
}

インプレッションレベルのユーザー収益API

You can access impression-level user revenue data on the client side. You can use this data to compare different sources and campaigns. You can also access this data by using the MAX User Revenue API. MMPs who want to access this data should review the Impression-Level User Revenue API for MMPs documentation.

サポートされているすべてのネットワークに対して、Adjust などのモバイル計測パートナーとインプレッションレベルの広告収益データを共有できます。

すべての広告ライフサイクルコールバックで収益額を取得できます。 これを行うには、MaxAdRevenueListenerを作成して、そのonAdRevenuePaid()メソッドを実装し、そのリスナーをsetRevenueListener()に渡します。 以下の例は、このような「広告収益支払い済み」コールバックの実装方法を示したものです。

@Override
void onAdRevenuePaid(final MaxAd ad)
{
double revenue = ad.getRevenue(); // In USD
// Miscellaneous data
String countryCode = AppLovinSdk.getInstance( context ).getConfiguration().getCountryCode(); // "US" for the United States, etc - Note: Do not confuse this with currency code which is "USD"
String networkName = ad.getNetworkName(); // Display name of the network that showed the ad
String adUnitId = ad.getAdUnitId(); // The MAX Ad Unit ID
MaxAdFormat adFormat = ad.getFormat(); // The ad format of the ad (e.g. BANNER, MREC, INTERSTITIAL, REWARDED)
String placement = ad.getPlacement(); // The placement this ad's postbacks are tied to
String networkPlacement = ad.getNetworkPlacement(); // The placement ID from the network that showed the ad
}

以下の例のように、収益値の精度評価を取得することもできます。

String revenuePrecision = ad.getRevenuePrecision();

この精度は、以下のいずれかの値を取ります。

"publisher_defined"
収益額はパブリッシャーによって指定された価格です
"exact"
収益額はリアルタイムオークションによって算出されます
"estimated"
収益額はAuto-CPMまたはFBビディングの推定に基づいています
"undefined"
収益額が定義されておらず、推定するのに十分なデータがありません
""
収益と精度が有効ではありません(テストモードなど)

広告リクエストコールバックの設定

広告リクエスト開始を待機するには、MaxAdRequestListenerを設定し、そのonAdRequestStarted()メソッドを実装して、そのリスナーをsetRequestListener()に渡します。 以下の例は、このような「広告リクエスト開始」コールバックの実装方法を示したものです。

@Override
public void onAdRequestStarted(final String adUnitId)
{
// Ad request started here
}

Selective Init

AppLovinSdkInitializationConfiguration内の広告ユニットを指定してSDKを初期化できます。 このときSDKは、指定の広告ユニットに設定されたネットワークのみを初期化します。 広告ユニットを指定しない場合、SDKは現在のセッションにすべての広告ユニットが必要だと見なします。 その結果、すべての広告ユニットに設定されているネットワークがすべて初期化されます。 以下の例は、この機能の実装方法を示したものです。

AppLovinSdkInitializationConfiguration.Builder initConfigBuilder = AppLovinSdkInitializationConfiguration.builder( «your-SDK-key», this );
initConfigBuilder.setMediationProvider( AppLovinMediationProvider.MAX );
List<String> adUnitIds = new ArrayList<>();
adUnitIds.add( "«ad-unit-ID-1»" );
adUnitIds.add( "«ad-unit-ID-2»" );
initConfigBuilder.setAdUnitIds( adUnitIds );
AppLovinSdk.getInstance( this ).initialize( initConfig, new AppLovinSdk.SdkInitializationListener()
{
@Override
public void onSdkInitialized(final AppLovinSdkConfiguration sdkConfig)
{
}
} );

SDK KeyはAppLovinダッシュボードのAccount > General > Keys のセクションにてご確認ください。

Waterfall Information API

Waterfall Information APIは、広告の現在のウォーターフォール(ロードされたもの、またはロードに失敗したもの)について通知します。APIは、ウォーターフォール内の各広告のロード状態、待ち時間、資格情報、およびメディエーションネットワーク情報を返します。 ウォーターフォール内の広告がロードに失敗した場合、APIはエラー情報を提供します。

AdLoadStateの値

説明
0Ad Load Not Attempted
1Ad Loaded
2Ad Failed To Load

@Override
public void onAdLoaded(final MaxAd ad)
{
MaxAdWaterfallInfo waterfall = ad.getWaterfall();
if ( waterfall == null ) return;
System.out.println( "Waterfall Name: " + waterfall.getName() + " and Test Name: " + waterfall.getTestName() );
System.out.println( "Waterfall latency was: " + waterfall.getLatencyMillis() + " milliseconds" );
String waterfallInfoStr;
for ( MaxNetworkResponseInfo networkResponse : waterfall.getNetworkResponses() )
{
waterfallInfoStr = "Network -> " + networkResponse.getMediatedNetwork() +
"\n...adLoadState: " + networkResponse.getAdLoadState() +
"\n...latency: " + networkResponse.getLatencyMillis() + " milliseconds" +
"\n...credentials: " + networkResponse.getCredentials();
if ( networkResponse.getError() != null )
{
waterfallInfoStr += "\n...error: " + networkResponse.getError();
}
System.out.println( waterfallInfoStr );
}
}
@Override
public void onAdLoadFailed(final String adUnitId, final MaxError error)
{
MaxAdWaterfallInfo waterfall = error.getWaterfall();
if ( waterfall == null ) return;
System.out.println( "Waterfall Name: " + waterfall.getName() + " and Test Name: " + waterfall.getTestName() );
System.out.println( "Waterfall latency was: " + waterfall.getLatencyMillis() + " milliseconds" );
for ( MaxNetworkResponseInfo networkResponse : waterfall.getNetworkResponses() )
{
System.out.println( "Network -> " + networkResponse.getMediatedNetwork() +
"...latency: " + networkResponse.getLatencyMillis() +
"...credentials: " + networkResponse.getCredentials() + " milliseconds" +
"...error: " + networkResponse.getError() );
}
}

バナー広告 / MREC広告のリフレッシュをカスタマイズ

バナーとミディアムレクタングル(MREC)広告のリフレッシュ間隔は、広告ユニットUIによる設定と同様に、API経由でカスタマイズできます。 リフレッシュ間隔の最小値は10秒、最大値は120秒で、この範囲以外の値は無視されます。 以下のコードサンプルは、リフレッシュ間隔をカスタマイズする方法を示すものです。

// Where adView is an instance of MaxAdView
adView.setExtraParameter( "ad_refresh_seconds", «ad-refresh-rate» );