Ad Quality SDK 実装ガイド

Ad Quality SDK を使用すると、アプリ内で Ad Quality を利用することができます。Ad Quality SDKは、使用中のアドネットワーク SDK から必要なすべての広告イベントと属性を自動的に収集するため、最小限のコーディングで簡単に実装が完了します。

Important! Ad Quality SDK を実装する前に、ironSource 管理画面に少なくとも 1 つのアプリを登録していることを確認してください。
LevelPlay を使用中のパブリッシャーはメディエーション実装の一部として、一行のコードで Ad Quality SDK を追加・変更することが可能です。 詳細はこちら

ステップ1:Ad Quality SDK をアプリに追加する

Gradle
1. 以下を build.gradle の repositories セクションに追加します:

repositories {
   maven {
       url 'https://android-sdk.is.com/'
   }
}

2. 続いて、以下を dependencies セクションに追加します:

dependencies {
  // ironSource Ad Quality SDK
  implementation 'com.ironsource:adqualitysdk:7.16.0'
}

ステップ2:SDK を初期化する

  1. Unity LevelPlay プラットフォーム上の ironSource appKey を使用して Ad Quality SDK を初期化します。
  2. 次のコードをアプリのメイン スレッドに追加するか、他の広告ネットワーク SDK と同じスレッドに追加して、Ad Quality SDK を初期化します:

import com.ironsource.adqualitysdk.sdk.IronSourceAdQuality;
protected void onCreate(Bundle savedInstanceState) {
    // Initialize
    IronSourceAdQuality.getInstance().initialize(this, appKey);
}

ステップ3(任意):SDK の初期化(アドバンスト)

実装を特別な設定でカスタマイズする事で、さらに多くの機能を使用できます:

  1. ユーザー ID – Ad Quality のデフォルト ID ではなく、独自のユーザー ID を使用できます。
  2. テストモード – Ad Quality SDK 実装のテスト設定(デフォルトは false)
  3. ログレベル – コードにおける問題に対するデバッグ時に使用するログレベル設定(デフォルトはINFO)

以下のコードを使用して、ビルダーで config オブジェクトを作成します。

ISAdQualityConfig.Builder adQualityConfigBuilder = new ISAdQualityConfig.Builder();

ユーザー ID

Ad Quality SDK では以下二つの方法でユーザー ID を設定できます:

1. 初期化前または初期化中に独自のユーザー ID を設定する方法:

adQualityConfigBuilder.setUserId(userId);
// The default user id is Ad Quality internal id.
// The only allowed characters for user id are: letters, numbers, @, -, :, =, _ and /.
// The user id cannot be null and must be between 2 and 100 characters, otherwise it will be blocked.

2. 初期化時までにユーザー ID を取得できない場合、初期化後にデフォルトのユーザー ID を変更する方法:

IronSourceAdQuality.getInstance().changeUserId(userId);
// The default user id is Ad Quality internal id. 
// The only allowed characters for user id are: letters, numbers, @, -, :, =, _ and /. 
// The user id cannot be null and must be between 2 and 100 characters, otherwise it will be blocked.

テストモード

adQualityConfigBuilder.setTestMode(true); 
// The default is false - set to true only to test your Ad Quality integration

ログレベル

adQualityConfigBuilder.setLogLevel(ISAdQualityLogLevel.INFO);
// There are 5 different log levels:
// ERROR, WARNING, INFO, DEBUG, VERBOSE
// The default is INFO
ISAdQualityConfig adQualityConfig = adQualityConfigBuilder.build();
IronSourceAdQuality.getInstance().initialize(this, appKey, adQualityConfig);

ステップ4(任意):SDK コールバックイベントの設定

ISAdQualityInitListener:

ISAdQualityConfig.Builder builder = new ISAdQualityConfig.Builder().setAdQualityInitListener(new ISAdQualityInitListener() { 

    @Override 
    public void adQualitySdkInitSuccess() { 
        Log.d("AdQualityInitListener", "adQualitySdkInitSuccess"); 
    } 

    @Override 
    public void adQualitySdkInitFailed(ISAdQualityInitError error, String message) { 
        Log.d("AdQualityInitListener", "adQualitySdkInitFailed " + error + " message: " + message); 
    } 
}); 

ISAdQualityConfig adQualityConfig = builder.build();
IronSourceAdQuality.getInstance().initialize(this, appKey, adQualityConfig);

Note: Ad Quality SDK の初期化にかかる時間は、アプリに実装されたアドネットワーク SDK の数によって異なります。また、ネットワーク接続の問題も遅延の原因となる場合があります。初期化の平均時間は3〜4秒です。

ステップ5(任意):Ad Quality SDK へインプレッションレベルレベニューを送信する

Note: LevelPlay を使用していて次の機能を使用する場合には、最初に Ad Quality が初期化されていることを確認してください。
Note: この機能は、フルスクリーン広告のみをサポートしています。 LevelPlay、MAX、および DT FairBid の場合、このデータは自動的に収集されます。

インプレションレベルレベニューレポートは Ad Quality SDK 7.2.0 以降でサポートされています:

Ad Quality SDK でインプレッションレベルレベニューを送信するには、以下のコードを実装します。

Important! sendCustomMediationRevenue メソッドは広告が表示された際に呼んでください。広告のライフサイクル外で呼んだ場合は無効となります。

ISAdQualityCustomMediationRevenue.Builder builder = new ISAdQualityCustomMediationRevenue.Builder()                                                 
    .setMediationNetwork(ISAdQualityMediationNetwork.SELF_MEDIATED)                                                 
    .setAdType(ISAdQualityAdType.REWARDED_VIDEO)
    .setPlacement("placement")
    .setRevenue(0.12);
IronSourceAdQuality.getInstance().sendCustomMediationRevenue(builder.build());

AdMob メディエーションを使用している場合は、次の手順に従ってください:

  1. AdMob のアカウントマネージャーに、AdMob インプレッションレベル LTV(iLTV)を有効にするよう依頼します。
  2. Android または iOS の GMA SDK 8.12.0 以降を使用していること、およびそのバージョンが iLTV をサポートしていることを確認します。
  3. 次のコードをAd Quality SDK の実装部分に追加します:

RewardedAd mRewardedAd;
 
@Override
public void onAdLoaded(@NonNull RewardedAd rewardedAd) {
   mRewardedAd = rewardedAd;
   // Set paid event listener
   mRewardedAd.setOnPaidEventListener(new OnPaidEventListener() {
   @Override
   public void onPaidEvent(AdValue adValue) {
         ISAdQualityCustomMediationRevenue.Builder builder = new ISAdQualityCustomMediationRevenue.Builder()                                                                                                         
             .setMediationNetwork(ISAdQualityMediationNetwork.ADMOB)                                                                                                 
             .setAdType(ISAdQualityAdType.REWARDED_VIDEO)                                                      
             .setPlacement(mRewardedAd.getAdUnitId())                                                          
             .setRevenue(adValue.getValueMicros()/1000000.0);
         IronSourceAdQuality.getInstance().sendCustomMediationRevenue(builder.build());
       }
  });
}