ドキュメント

​
​

Development

User Acquisition

Monetization

産業

LevelPlay SDK - Flutter

Unity SDK

Android SDK

iOS SDK

Adobe AIR SDK

Flutter SDK

React Native SDK

LevelPlay SDK - Flutter

Unity LevelPlay
​
​
Flutter SDK
  • 使用の準備
    • Flutter プラグインインテグレーション
    • カスタムアダプター
      • Integrate your network as a custom adapter
        • Register your network as a custom adapter
        • Build a custom adapter for Android
        • Build a custom adapter for iOS
        • Test your network adapter
    • LevelPlay SDK 変更履歴
  • 規制と設定
  • Ad formats (広告フォーマット)
  • メディエーションネットワーク
  • インテグレーションのテスト
  1. ゲームの成長
  2. Unity LevelPlay
  3. LevelPlay SDK
  4. Flutter 開発者向け LevelPlay SDK

Android 用のカスタムアダプタのビルド

ネットワーク用のカスタムアダプタを開発して Android プラットフォームに統合します (必要な設定やテスト手順など)。
読み終わるまでの所要時間 1 分
最終更新 7日前

このドキュメントでは、カスタムアダプターをビルドし、ネットワークを Ironsource メディエーションと統合するために必要なリソースをパブリッシャーに提供する手順について説明します。

前提条件

  1. カスタム アダプター登録フォームへの記入
  2. 以下の情報が入手可能であることを確認します。
    • Adapter パッケージ名
    • Adapter クラス名
    • ネットワーク設定キー
  3. 最新の LevelPlay SDK のダウンロードは こちら
  4. 動画リワード広告ユニットとインタースティシャル広告ユニットに最低限必要な LevelPlay SDK バージョンは 7.1.13。
注
Android および Unity 開発プロジェクトの場合、最低限必要な LevelPlay SDK version is 7.3.0 for banner ad unit (バナー広告単位のバージョンは 7.3.0)

重要

  • 必ずコードの一部としてメインスレッド要件をハンドルするようにしてください
  • コード保護と例外処理を追加して、予期しない障害からアプリケーションを保護する

ネットワーク用のアダプタの作成方法

ネットワーク アダプタがネットワーク広告ロジックを管理し、パブリッシャーが Ironsource メディエーションを使用してネットワークから広告を表示できるようにします。
このプロセスの一環として、BaseAdapter と呼ばれるアダプタークラスと、サポートする各広告単位に追加のクラスを作成する必要があります。
BaseAdapter は、SDK の初期化プロセスを含むネットワークワークの SDK を管理するのにヘルプます。また、すべての広告ユニットのセッションを通じて使用できる変数と定数を定義できます。
広告単位クラスは、広告のロード、表示、および管理のロジックを決定し、ウォーターフォールの広告表示ごとにインスタンス化されます。

ネットワークベースアダプタの作成

ネットワークアダプタを実装するには、ironsource BaseAdapter クラスを拡張して専用パッケージに新しいクラスを作成します。
カスタムアダプタ登録確認メールで受け取ったパッケージ名とベースアダプタ名を使用します。
package com.ironsource.adapters.custom.<YourNetworkName>;public class <YourNetworkName>CustomAdapter extends BaseAdapter { // Your class implementation}

ネットワークSDKの初期化

ironsource メディエーションは、メディエーションの初期化プロセスの一環としてベースアダプタの init API を呼び出します。その結果、この API が複数回呼び出される可能性があります。
init 実装の一部として、NetworkInitializationListener で定義された初期化コールバックを、成功 (onInitSuccess) または失敗 (onInitFailed) するたびに呼び出してください。
AdData パラメータには、パブリッシャーが Ironsource に提供した設定データが含まれます。AdDataクラスの詳細については、こちらを参照してください。
void init(@NotNull AdData adData, @NotNull Context context, @Nullable NetworkInitializationListener listener){ ... if (init-success-condition) { // Initialization completed successfully listener.onInitSuccess(); } else { // Initialization failed listener.onInitFailed(AdapterErrors.ADAPTER_ERROR_MISSING_PARAMS, error); }}

SDK とアダプターのバージョンを提供する

この情報は、パブリッシャーのアプリケーションに現在実装されている SDK とアダプタのバージョンを示します。getNetworkSDKVersion を実装する場合は、アダプタの更新と SDK サポートの柔軟性を高めるために、ハードコードされた値の代わりに API を使用することをお勧めします。
@Nullable String getNetworkSDKVersion();@NotNull String getAdapterVersion();

インタースティシャル広告単位のサポートを追加

インタースティシャル広告単位クラスの作成

インタースティシャル広告単位を管理するクラスを作成します。ネットワークのカスタムアダプタの同じパッケージの一部として BaseInterstitial クラス** を拡張します。このクラスは、パブリッシャーがロード API を通じてアプリケーション内の新しいインタースティシャル広告をトリガーしたときにアクティブになります。
登録プロセスの一部として Ironsource から受け取ったパッケージとインタースティシャルクラス名を使用します。
パッケージ com.Ironsource.adapters.custom.[YourNetworkName];public class SampleCustomInterstitial extends BaseInterstitial<SampleCustomAdapter> implements SampleNetworkInterstitialAdListener {public class <YourNetworkName>CustomInterstitial extendsBaseInterstitial <<YourNetworkNameCustomAdapter>> {...}

広告単位コンストラクタの実装

NetworkSetting オブジェクトを使用してコンストラクターを実装します。これはインタースティシャル広告単位の実装の一部として必要であり、ネットワークワークをウォーターフォールに追加できるようにします。
public <YourNetworkName>CustomInterstitial(NetworkSettings networkSettings) { super(networkSettings);}

インタースティシャル広告のリクエスト

LoadAd API をオーバーライドして、パブリッシャーがネットワークからインタースティシャル広告をリクエストできるようにします。AdData を使用すると、パブリッシャーの入力にアクセスし、広告識別子を受け取ることができます。
InterstitialAdListener コールバックは、広告のロードの成功 (onAdLoadSuccess) とあらゆる種類の失敗 (onAdLoadFailed) に対して必ず実装してください。リスナーコールバックが事前に定義された時間が経過してもトリガーされない場合、瞑想はロードを停止し、ネットワークワークは広告を提供できなくなります。
public void loadAd(AdData adData, Activity activity, InterstitialAdListener listener) { // Load your ad}

広告が利用可能かどうかの確認

isAdAvailable APIをオーバーライドして、パブリッシャーがユーザーに広告を表示する前に広告の準備状況を確認できるようにします。API は、広告が正常にロードされた場合は true、現在ロードされている広告がない場合は false を返します。これを行うには、ネットワークの is-ad-available (広告が利用可能な状態) 表示を使用するか (ネットワークで提供されている場合)、LoadAd および ShowAd API の一部として広告の状態を手動で管理します。
public boolean isAdAvailable(AdData adData) { return isAdAvailable;}

インタースティシャル広告を表示する

広告が正常にロードされると、パブリッシャーはそれを表示できるようになります。isAdAvailable が true であることを確認した後に showAd API をオーバーライドして、パブリッシャーにより良い体験を提供できます。このメソッドで受け取る情報の一部は AdData です。このオブジェクトを使用すると、関連する広告を表示できます。ショーを実行できなかった場合は、onAdShowFailed コールバックが返されます。
public void showAd(AdData adData, InterstitialAdListener listener) { // check your ad load status if (isAdLoaded) { // show your ad } else { listener.onAdShowFailed(adatperErrorCode, adapterErrorMsg); }}

InterstitialAdListener コールバックのレポート

必ず、ネットワークの機能に応じて InterstitialAdListener のコールバックをオーバーライドしてください。コールバックを正しくレポートすることで、Ironsource メディエーションのベストプラクティスフローが保証され、ネットワークワークのパフォーマンデータが Ironsource プラットプラットフォームに正しく反映されるようになります。

必須のコールバック

// Indicates that interstitial ad was loaded successfullyvoid onAdLoadSuccess();// The interstitial ad failed to load.ironsource ErrorType の使用 (塗りつぶしなし/その他)void onAdLoadFailed(@NotNull AdapterErrorType adapterErrorType, int errorCode, @Nullable String errorMessage);// The interstitial ad is displayed successfully to the user.これはインプレッションを示します。void onAdOpened();// User closed the interstitial advoid onAdClosed();// The ad could not be displayedvoid onAdShowFailed(int errorCode, @Nullable String errorMessage);

任意コールバック

// Indicates the network differentiates between show-success and ad-open (impression)void onAdShowSuccess();// Indicates an ad was clickedvoid onAdClicked();

ベースアダプタからデータを取得する方法(任意)

ベースアダプターがセッションを通じて広告ユニットに関連する状態またはパラメーターを管理する場合は、getNetworkAdapter API を使用します。これには、広告単位 API で使用する必要があるベースアダプタの一部として定義されたすべてのオブジェクトが含まれます。
// example of data retrieved from your network level adapterSampleCustomAdapter networkAdapter = getNetworkAdapter();if (networkAdapter != null) { // call network level method String extraData = networkAdapter.sampleAppLevelData();}

動画リワード広告単位のサポートを追加

動画リワード広告単位クラスの作成

BaseRewardedVideo クラス**をネットワークのカスタム アダプタの同じパッケージの一部として拡張することによって、動画リワード広告単位を管理するクラスを作成します。このクラスは、パブリッシャーがロード API を通じてアプリケーションで新しい動画リワード広告をトリガーしたときにアクティブになります。
登録プロセスの一環として Ironsource から受け取ったパッケージと動画リワード クラス名を使用します。
パッケージ com.Ironsource.adapters.custom.[YourNetworkName];import com.ironsource.mediationsdk.adunit.adapter.BaseRewardedVideo;import com.ironsource.mediationsdk.adunit.adapter.listener.RewardedVideoAdListener;import com.ironsource.mediationsdk.adunit.adapter.utility.AdData;import com.ironsource.mediationsdk.adunit.adapter.utility.AdapterErrorType;import com.ironsource.mediationsdk.adunit.adapter.utility.AdapterErrors;import com.ironsource.mediationsdk.model.NetworkSettings;
public class SampleCustomRewardedVideo extends BaseRewardedVideo<SampleCustomAdapter> implements SampleNetworkRewardedVideoListener { // Add your adapter code here}

広告単位コンストラクタの実装

NetworkSetting オブジェクトを使用してコンストラクターを実装します。これは動画リワード広告単位の実装の一部として必要であり、ネットワークをウォーターフォールに追加できるようにします。
public <YourCustomNetwork>CustomRewardedVideo(NetworkSettings networkSettings) { super(networkSettings);}

動画リワード広告のリクエスト

LoadAd API をオーバーライドして、パブリッシャーがネットワークから動画リワード広告をリクエストできるようにします。AdData を使用すると、パブリッシャーの入力にアクセスし、広告識別子を受け取ることができます。
RewardedVideoAdListener コールバックは、広告のロードの成功時(onAdLoadSuccess)とすべての種類の失敗時(onAdLoadFailed)に必ず実装してください。リスナーコールバックが事前に定義された時間が経過してもトリガーされない場合、瞑想はロードを停止し、ネットワークワークは広告を提供できなくなります。
public void loadAd(@NotNull AdData adData, @NotNull Activity activity, @NotNull RewardedVideoAdListener rewardedVideoAdListener) { // Load your ad}

広告が利用可能かどうかの確認

isAdAvailable APIをオーバーライドして、パブリッシャーがユーザーに広告を表示する前に広告の準備状況を確認できるようにします。API は、広告が正常にロードされた場合は true、現在ロードされている広告がない場合は false を返します。これを行うには、ネットワークの is-ad-available (広告が利用可能な状態) 表示を使用するか (ネットワークで提供されている場合)、LoadAd および ShowAd API の一部として広告の状態を手動で管理します。
public boolean isAdAvailable(AdData adData) { return isAdAvailable;}

動画リワード広告を表示する

広告が正常にロードされると、パブリッシャーはそれを表示できるようになります。isAdAvailable が true であることを確認した後に showAd API をオーバーライドして、パブリッシャーにより良い体験を提供できます。このメソッドで受け取る情報の一部は AdData です。このオブジェクトを使用すると、関連する広告を表示できます。ショーを実行できなかった場合は、onAdShowFailed コールバックが返されます。
public void showAd(AdData adData, RewardedVideoAdListener rewardedVideoAdListener) { // check your ad load status if (isAdLoaded) { // show your ad } else { AdapterErrors adapterErrorCode = AdapterErrors.<ERROR CODE>; 文字列 adapterErrorMsg = “ERROR MESSAGE”; rewardedVideoAdListener.onAdShowFailed(adatperErrorCode, adapterErrorMsg); }}

RewardedVideoAdListener コールバックのレポート

必ず、ネットワークの機能に応じて RewardedVideoAdListener のコールバックをオーバーライドしてください。コールバックを正しくレポートすることで、Ironsource メディエーションのベストプラクティスフローが保証され、ネットワークワークのパフォーマンデータが Ironsource プラットプラットフォームに正しく反映されるようになります。

必須のコールバック

// Indicates that rewarded video ad was loaded successfullyvoid onAdLoadSuccess();// The rewarded video ad failed to load.ironsource ErrorType の使用 (塗りつぶしなし/その他)void onAdLoadFailed(@NotNull AdapterErrorType adapterErrorType, int errorCode, @Nullable String errorMessage);// The rewarded video ad is displayed successfully to the user.ironsource プラットフォームでのインプレッションを示します。void onAdOpened();// User closed the rewarded video advoid onAdClosed();// The ad could not be displayedvoid onAdShowFailed(int errorCode, @Nullable String errorMessage);// The ad was rewarded successfullyvoid onAdRewarded();

任意コールバック

// Indicates an ad was clickedvoid onAdClicked();// Indicates an ad was displayed on foregroundvoid onAdVisible();// Indicates an ad playable startedvoid onAdStarted();// Indicates an ad playable endedvoid onAdEnded();

バナー広告単位のサポートを追加(Android開発アプリケーションのみ)

ステップ 1.Create バナー広告単位クラス

ネットワークのカスタム アダプタの同じパッケージの一部として BaseBanner クラスを拡張することによって、バナー広告単位を管理するクラスを作成します。このクラスは、パブリッシャーが API のロードを通じてアプリケーションで新しいバナー広告をトリガーしたときにアクティブになります。
登録プロセスの一環として Ironsource から受け取ったパッケージとバナーのクラス名を使用します。

ステップ 2. 広告単位コンストラクタの実装

NetworkSetting オブジェクトを使用してコンストラクターを実装します。これはバナー広告単位の実装の一部として必要であり、ネットワークをウォーターフォールに追加できるようにします。
public <YourNetworkName>CustomBanner(NetworkSettings networkSettings) { super(networkSettings);}

バナーサイズ

サポートされているバナーサイズの詳細については、以下の表を参照してください。カスタムネットワークは、これらのサイズの任意の組み合わせをサポートできます。バナーサイズは、loadAd API の一部としてパラメーターとして受け取ります。
バナーのサイズが SMART の場合は、デバイスの画面サイズに応じてサイズをバナーまたはリーダーボードのいずれかに変更してください (以下の手順を参照)。

ISBannerSize

説明

寸法 (dp) (幅 x 高さ)

BANNER標準バナー320×50
LARGELarge バナー320 x 90
矩形中矩形 (MREC)300 x 250
SMARTスマートバナー (モバイルとタブレットの両方用に調整済み)If (画面幅 720 未満) 320 x 50 If (画面幅 720 未満) 728 x 90

ステップ 3. バナー広告をリクエストします

loadAd API を実装して、パブリッシャーがネットワークからバナー広告をリクエストできるようにします。AdData を使用すると、パブリッシャーの入力にアクセスして広告識別子を受け取ることができます。ISBannerSize には要求されたバナーサイズが表示されます。
public void loadAd(@NotNull AdData adData, @NotNull Activity activity, @NotNull ISBannerSize bannerSize, @NotNull BannerAdListener bannerAdListener) { // Load your ad}

ステップ 4. 破棄バナー

ironsource では、アプリケーション開発者が以下の destroyAd メソッドを実装してバナー広告を破棄する必要があります。
public void destroyAd(@NotNull AdData adData) { }
注
ネットワーク SDK がこの種の API をサポートしていない場合は、 実装。

ステップ 5.BannerAdListener コールバックのレポート

ネットワークの機能に応じて BannerAdListener のコールバックをレポートします。これにより、ネットワークのパフォーマンス データが Ironsource プラットフォームに正しく反映されます。

必須のコールバック

// Indicates that a banner ad was loaded successfullyvoid onAdLoadSuccess(@NotNull View adView, @NotNull FrameLayout.LayoutParams frameLayoutParams)// The banner ad failed to load.ironsource ErrorType の使用 (塗りつぶしなし/その他)void onAdLoadFailed(@NotNull AdapterErrorType adapterErrorType, int errorCode, @Nullable String errorMessage)// The banner ad is displayed successfully to the user.ironsource プラットフォームでのインプレッションを示します。void onAdOpened()// Indicates an ad was clickedvoid onAdClicked()
カスタムアダプターでネットワークワークによって onAdLoadSuccess コールバックに渡される LayoutParams オブジェクトの値を定義します。以下はベストプラクティスです。
  • 実際のバナーサイズの幅と高ささを渡します。
  • 重力 プロパティを 重力.CENTER として定義します。

任意コールバック

//Should be invoked after a click, and before the user is taken out of the appvoid onAdLeftApplication()// Should be invoked after the ad view presents fullscreen contentvoid onAdScreenPresented()// Should be invoked after the fullscreen content is dismissedvoid onAdScreenDismissed()

アダプターを使用してパブリッシャーの入力にアクセスする

カスタムアダプター登録プロセスの一環として、アプリケーションレベルとインスタンスレベルのキーを提供しました。
これらのキーの値は、ironsource プラットフォームのパブリッシャーによって定義されます。これらの値は、 AdData オブジェクトを使用して実行時に使用できます 。
AdData オブジェクトは、 設定値を含むマップを含み、 アダプタおよび広告単位クラス API の一部です 。このパラメーターは、Init、LoadAd、ShowAd、および isAdAvailable API で使用できます。
登録確認メールの一部として受け取った名前を使用して、AdData マップ構造体から値にアクセスできます。
// Get Publisher setup parametersfinal String appLevelParam1 = adData.getString(<YourAppLevelParam1>);final String instanceLevelParam1 = adData.getString(<YourInstanceLevelParam1>);final String instanceLevelParam2 = adData.getString(<YourInstanceLevelParam2>);

ironsource エラーコードとエラータイプの使用

エラータイプ

これは onAdLoadFailed コールバックに関連しています。

エラータイプ

説明

ADAPTER_ERROR_TYPE_NO_FILL
表示できる広告がない場合に使用
ADAPTER_ERROR_TYPE_INTERNAL
ネットワークによって報告されるその他の理由で使用

エラーコード

これらのエラーコードは、onAdLoadFailed コールバックと onAdShowFailed コールバックに関連しています。

エラーコード

説明

ADAPTER_ERROR_MISSING_PARAMS
API が呼び出されたときに一部の必要な情報が利用できなかったため、アクションが失敗しました。
ADAPTER_ERROR_AD_EXPIRED
を使用して、広告の有効期限が切れたかどうかを示します。
ADAPTER_ERROR_INTERNAL
ネットワークによって報告されたその他のエラーに使用されます。

アダプタのデバッグ(任意)

デバッグをサポートすることを選択した場合は、アプリケーションから setAdapterDebug API を実装して呼び出します。これは BaseAdapter の一部として行う必要があります。
public class <YourNetworkName>CustomAdapter extends BaseAdapter { @Override public void setAdapterDebug(boolean adapterDebug) { this.adapterDebug = adapterDebug; }}

Copyright © 2026 Unity Technologies
法規事項プライバシーポリシークッキーDocumentation Terms of Use私の個人情報を販売または共有しないプライバシーに関する選択 (クッキー設定)

"Unity" の名称、Unity のロゴ、およびその他の Unity の商標は、米国およびその他の国における Unity Technologies またはその関係会社の商標または登録商標です (詳しくはこちら)。その他の名称またはブランドは該当する所有者の商標です。

一部のページは利便性向上のため機械翻訳を使用しており、内容に不正確な表現が含まれる場合があります。内容に齟齬または不一致が生じた場合は、英語版を正本とします。

  • このページ
    • 前提条件

      • 重要

    • ネットワーク用のアダプタの作成方法

    • ネットワークベースアダプタの作成

      • ネットワークSDKの初期化

      • SDK とアダプターのバージョンを提供する

    • インタースティシャル広告単位のサポートを追加

      • インタースティシャル広告単位クラスの作成

      • 広告単位コンストラクタの実装

      • インタースティシャル広告のリクエスト

      • 広告が利用可能かどうかの確認

      • インタースティシャル広告を表示する

      • InterstitialAdListener コールバックのレポート

        • 必須のコールバック

        • 任意コールバック

      • ベースアダプタからデータを取得する方法(任意)

    • 動画リワード広告単位のサポートを追加

      • 動画リワード広告単位クラスの作成

      • 広告単位コンストラクタの実装

      • 動画リワード広告のリクエスト

      • 広告が利用可能かどうかの確認

      • 動画リワード広告を表示する

        • RewardedVideoAdListener コールバックのレポート

        • 必須のコールバック

        • 任意コールバック

    • バナー広告単位のサポートを追加(Android開発アプリケーションのみ)

      • ステップ 1.Create バナー広告単位クラス

      • ステップ 2. 広告単位コンストラクタの実装

        • バナーサイズ

      • ステップ 3. バナー広告をリクエストします

      • ステップ 4. 破棄バナー

      • ステップ 5.BannerAdListener コールバックのレポート

        • 必須のコールバック

        • 任意コールバック

    • アダプターを使用してパブリッシャーの入力にアクセスする

    • ironsource エラーコードとエラータイプの使用

      • エラータイプ

      • エラーコード

    • アダプタのデバッグ(任意)


このページの問題を報告する