Unity のバナーインテグレーション
バナーは、静止画またはアニメーションを表示できる長方形のシステム主導広告であり、ライブアプリコンテンツの周囲の指定された領域に配信されます。
Before you start ironSource Unity プラグインと追加のアドネットワークアダプターがアプリケーションに正しく実装されていることを確認してください。実装の概要はステップ 1. バナー広告をロードする
バナー広告をロードするには、次のメソッドを呼びます:
- このメソッドを呼んでバナービューを読み込みます(この例では、BANNER バナーサイズです):
IronSource.Agent.loadBanner(IronSourceBannerSize.BANNER, IronSourceBannerPosition.BOTTOM);
サポートされている標準バナーサイズの詳細については、以下の表を参照してください:
IronSourceBannerSize Description Dimensions (WxH) (points in iOS, dp in Android) BANNER Standard Banner 320 x 50 LARGE Large Banner 320 x 90 RECTANGLE Medium Rectangular (MREC) 300 x 250 SMART
Smart Banner
(モバイルとタブレットに合わせてサイズとオリエンテーションを自動調整してレンダリング)iOS:
If (iPhone) 320 x 50
If (iPad) 728 x 90
Android:
If (screen width ≤ 720) 320 x 50
If (screen width > 720) 728 x 90サポートされている標準のバナー位置の詳細については、以下の表を参照してください:
IronSourceBannerPosition Description TOP バナーは画面の上部中央に配置されます BOTTOM バナーは画面中央下に配置されます - 別のオプションは、このシグネチャ( W x H )( iOS では points 、Android では dp )を使用して、カスタムサイズでバナーを配信することです:
IronSource.Agent.loadBanner(new IronSourceBannerSize(320, 50), IronSourceBannerPosition.BOTTOM);
onBannerAdLoadedEvent
を受け取り、バナーがアプリに表示されます。
バナーの表示・非表示 – オプション
広告体験に最大限の柔軟性を提供するために、アプリでバナーを表示および非表示にできるようになりました。
hideBanner と displayBanner API を使用することで、バックグラウンドでのバナーのロード・破棄をコントロールできます。
バナーをロードして配信したら、このバナーを非表示にし、アプリの後半で再表示することを選択できます。
バナーを非表示にするには、次の関数を呼びます:
IronSource.Agent.hideBanner();
そして、この同じバナーを再度表示するには、次の関数を呼びます:
IronSource.Agent.displayBanner();
ステップ 2. バナーイベントを実装する
ironSource Unity プラグインは、広告のアベイラビリティとアクティビティを通知するためにいくつかのイベントを発生させます。IronSource/Assets/Prefabs の下に、IronSourceEventsPrefab があります。これらのイベントを受信するには、こちらをプロジェクトに追加してください。
// Add AdInfo Banner Events
IronSourceBannerEvents.onAdLoadedEvent += BannerOnAdLoadedEvent;
IronSourceBannerEvents.onAdLoadFailedEvent += BannerOnAdLoadFailedEvent;
IronSourceBannerEvents.onAdClickedEvent += BannerOnAdClickedEvent;
IronSourceBannerEvents.onAdScreenPresentedEvent += BannerOnAdScreenPresentedEvent;
IronSourceBannerEvents.onAdScreenDismissedEvent += BannerOnAdScreenDismissedEvent;
IronSourceBannerEvents.onAdLeftApplicationEvent += BannerOnAdLeftApplicationEvent;
プラグインは、以下にリストされているすべての発生しうるイベントをリスナーに通知します:
/************* Banner AdInfo Delegates *************/
// Invoked once the banner has loaded
void BannerOnAdLoadedEvent(IronSourceAdInfo adInfo) {
}
// Invoked when the banner loading process has failed.
void BannerOnAdLoadFailedEvent(IronSourceError ironSourceError) {
}
// Invoked when end user clicks on the banner ad
void BannerOnAdClickedEvent(IronSourceAdInfo adInfo) {
}
// Notifies the presentation of a full screen content following user click
void BannerOnAdScreenPresentedEvent(IronSourceAdInfo adInfo) {
}
// Notifies the presented screen has been dismissed
void BannerOnAdScreenDismissedEvent(IronSourceAdInfo adInfo) {
}
// Invoked when the user leaves the app
void BannerOnAdLeftApplicationEvent(IronSourceAdInfo adInfo) {
}
ステップ 3. 追加のロード設定
LevelPlay ダッシュボードでのバナーのプレースメント、およびキャッピングとペーシングをサポートします。バナーのプレースメント、上限、ペースを設定して、アプリのユーザー体験を最適化する方法を学ぶにはこちら。
バナーのプレースメントを設定した場合は、次のメソッドを呼んで、特定の場所にバナー広告を配信します:
IronSource.Agent.loadBanner(IronSourceBannerSize.BANNER, IronSourceBannerPosition.BOTTOM, (string) "YOUR_PLACEMENT_NAME");
ステップ 4. バナー広告を破棄する
バナーを破棄するには、次のメソッドを呼びます:
IronSource.Agent.destroyBanner();
破棄されたバナーはロードできなくなります。もう一度提供したい場合は、もう一度初期化する必要があります。
ステップ 5. バナープロバイダーを実装する
次に、アドネットワークアダプターを実装して、LevelPlay Mediation を介してバナーを配信します。
サポートされているネットワークと、関連するプラットフォームで定義されている各ネットワークの bannerSize の動作は以下をご覧ください:
ステップ 6. アダプティブバナー
アダプティブバナー機能を使用すると、事前定義された広告の幅に基づいて最適なバナーの高さを受け取ることができます。
この機能を使用すると、アダプティブバナーをサポートするネットワーク(現在は AdMob と Goole Ad Manager のみ)は、定義したコンテナの幅に基づいて最適な高さの広告を返します。他のすべてのネットワークは、指定されたデフォルトの広告サイズに従ってバナーを配信します。
この実装( ironSource SDK 7.8.0 以降でサポート)では、コンテナはアダプティブバナーをサポートするかどうかに関係なく、すべてのネットワークのバナーの境界を定義します。これにより、バナーロードセッション中の各バナーリフレッシュで一貫した広告体験が保証されます。
- バナーのデフォルトサイズを設定
- アダプティブバナーのパラメータを定義 –
- Width:表示するバナーの幅。固定サイズまたは getDeviceScreenWidth API のいずれかを使用します。
- Height:getMaximalAdaptiveHeight API を使用して、上記手順で定義した幅に対する推奨のバナーの高さを取得します。
- ステップ #1 で定義したパラメータサイズを使用してコンテナを作成
- adaptive フラグを true に設定
- バナーをロード
コンテナを定義する
特定のサイズで手動コンテナを作成することも、画面サイズの自動取得を実装することもできます。
手動コンテナ
この例では、幅 360 の手動コンテナを定義します。
IronSourceBannerSize ironSourceBannerSize = IronSourceBannerSize.BANNER;
float Width = 360;
float Height = IronSource.Agent.getMaximalAdaptiveHeight(Width);
ISContainerParams isContainerParams = new ISContainerParams{ Width = Width, Height = Height };
ironSourceBannerSize.setBannerContainerParams(isContainerParams);
ironSourceBannerSize.SetAdaptive(true);
IronSource.Agent.loadBanner(ironSourceBannerSize, IronSourceBannerPosition.BOTTOM);
画面サイズの自動取得
IronSourceBannerSize ironSourceBannerSize = IronSourceBannerSize.BANNER;
float Width = IronSource.Agent.getDeviceScreenWidth();
float Height = IronSource.Agent.getMaximalAdaptiveHeight(Width);
ISContainerParams isContainerParams = new ISContainerParams{ Width = Width, Height = Height };
ironSourceBannerSize.setBannerContainerParams(isContainerParams);
ironSourceBannerSize.SetAdaptive(true);
IronSource.Agent.loadBanner(ironSourceBannerSize, IronSourceBannerPosition.BOTTOM);
- getDeviceScreenWidth メソッドは、iOS のセーフエリアを考慮しながら全画面サイズを提供し、デバイスの向きに基づいて幅を返します。
- getMaximalAdaptiveHeight メソッドは、アダプティブバナーがサポートされているネットワークでは指定された幅に対する最大の高さを提供します。アダプティブバナーをサポートするネットワークがない場合、戻り値は -1 になります。
完了!
これで、アプリケーションでバナーを配信するように設定されました。Integration Helper を使用してインテグレーションを確認します。
次のステップは?
インテグレーションガイドに従って、追加の広告ユニットを実装します。
より多くのメディエーションアダプターを実装することに興味がありますか?こちらでサポートされているメディエーションネットワークを確認してください。