ベストプラクティス - glossom-dev/AdfurikunSDK-Unity GitHub Wiki

このページでは、「リワード広告」を基に、実装方法を説明します。
広告タイプによって使用するクラス名は異なりますが、実装手順は概ね同じです。
以下のテーブルを参考に、用語を読み替えて実装してください。

広告種類 クラス名
リワード AdfurikunMovieRewardUtility
インタースティシャル AdfurikunInterstitialUtility
アプリ起動時 AdfurikunAppOpenAdUtility
ネイティブ AdfurikunNativeAdUtility
モバイルバナー AdfurikunBannerUtility
レクタングル AdfurikunRectangleUtility

広告読み込み関数について

広告の読み込みには、次の2つの方法が存在します。

読み込み方法 関数 説明
通常 AdfurikunMovieRewardUtility.LoadMovieReward(timeout) 通常のロード
タイムアウト有 AdfurikunMovieRewardUtility.LoadMovieReward タイムアウト有のロード

広告の取得結果に関するコールバックは、必ず引数で設定された時間内に呼び出される
(設定可能な範囲は0.1~60秒)

それぞれには次のようなメリット・デメリットが存在します。

読み込み方法 メリット デメリット
通常 広告の取得に成功しやすい ・広告の取得完了までに時間がかかる場合がある
タイムアウト有 通常よりも短時間で
広告取得できる場合がある
・タイムアウトの設定時間が短すぎると、
 広告の取得に失敗しやすくなる
・優先順位が上位のアドネットワークに在庫があっても、
 取得に時間がかかる場合は下位のアドネットワークが
 再生される場合がある

上記の違いから、それぞれ次のようなケースで使用することを推奨いたします。

読み込み方法 推奨されるケース
通常 広告のロードを開始してから、実際に再生されるまでのラグが許容できるケース
例: 特定のページに遷移したタイミングでロードを開始し、時間を置いてユーザが再生する
タイムアウト有 広告のロード開始から再生まで、ラグを発生させたくないケース
例: ユーザが "広告を再生する" ボタンを押した直後に、広告のロードを開始する

広告読み込みの結果コールバックのタイムアウトについて

LoadMovieReward()関数で広告のロードを行う場合、取得結果に関するコールバックは、
広告枠に設定されたアドネットワークの数や、各ネットワークの在庫状況によって、
呼び出されるまでに時間がかかることがあります。
そのため、広告の読み込み開始から結果が返ってくるまでに遅延が発生する場合があります。

広告の読み込みを開始してから、指定した秒数以内に必ず結果を確認し、ユーザーに通知する必要がある場合は、
LoadMovieReward(timeout)関数を使用してください。

広告読み込みに失敗した際の対応について

読み込み失敗のコールバック が呼ばれた場合、その後再度ロードを試みることで、広告の取得が成功する場合があります。
それでも失敗する場合、以下のリンク先を参考に原因の調査をお願いいたします。

複数の広告枠IDを利用する場合

以下実装のように広告枠を設定し直す事で、複数の広告枠を利用する事が出来ます。

#if UNITY_IPHONE
    if (Application.platform == RuntimePlatform.IPhonePlayer)
    {
        rewardUtility.config.iPhoneAppID = "iOS広告枠ID";
    }
#elif UNITY_ANDROID
    if (Application.platform == RuntimePlatform.Android)
    {
        rewardUtility.config.androidAppID = "Android広告枠ID";
    }
#endif
⚠️ **GitHub.com Fallback** ⚠️