コンテンツにスキップ

インタースティシャルバナーの表示

Hive SDKは、インタースティシャルバナーを提供します

  • ゲームユーザーにイベントを効果的に公開する
  • ユーザーにゲームへの参加を促す
  • 他のゲームを宣伝し、報酬を与えるためのクロスプロモーションとして活用する

Hive で定義されたバナーは、文字のない単一の画像で構成されたプロモーションビューを意味します。ユーザーがバナーをクリックすると、Hive コンソールに設定された内容に応じて、詳細ページ、外部ページ、または広告されているゲームのダウンロードページにユーザーを移動させます。ログイン後にゲームロビーに入るときに、バナー画像を全画面で表示するインタースティシャルバナーを表示することをお勧めします。

Hive コンソールでインタースティシャルバナーを登録する

バナー画像を横向きおよび縦向きモードに従ってデザインし、Hive コンソールに登録してください。バナー登録に関する詳細は、Hive コンソールプロモーションガイドを参照してください。

  • プロモーションバナー画像サイズ
    • 横向きモード: 1080x720 px
    • 縦向きモード: 720x1080 px
  • PC環境で高解像度のバナーを表示したい場合は、2160x1440 pxの画像をアップロードしてください。

インタースティシャルバナーの表示

  • インタースティシャルバナーの例

インタースティシャルバナーを表示するには、PromotionクラスのshowPromotion()メソッドをPromotionType.BANNERパラメータで呼び出します。Hive SDK v4.12.1以降、PromotionType.BANNERはウェブタイプのバナーを表示し、他のパラメータは画像ビュータイプのバナーを表示します。PromotionType.BANNERLEGACYを呼び出すと、ウェブビュータイプのバナーが従来通り表示されます。

PromotionType.BANNERタイプのフルバナーを表示する際、Hive SDKの初期化プロセス中にアプリのローカルストレージに非同期で保存された画像が表示されます。キャッシュされた画像がない場合、画像はすぐにダウンロードされて表示されます。

Hive SDK v4 24.2.0 から、インタースティシャルバナーの下部にある「今日表示しない」機能が「n日間表示しない」に変更されます。 Hive コンソールにインタースティシャルバナーを登録する際、表示しない期間を1日から7日まで設定できます。表示しない基準は、日付が変わる際の該当地域の現地時間の真夜中です。詳細については、Hive コンソールのプロモーションガイドを参照してください。

以下は、インタースティシャルバナーを表示するためのサンプルコードです。

APIリファレンス: hive.Promotion.showPromotion

using hive;    
    PromotionType promotionViewType = PromotionType.BANNER;    

    // 真の場合、「今日は再度視聴しない」ボタンは表示されません。ユーザーがすでに今日再度表示しないように設定していても、それは無視され、インタースティシャルバナーが表示されます。    
    Boolean isForced = false;    

    // インタースティシャルバナーを表示    
    Promotion.showPromotion(promotionViewType, isForced, (ResultAPI result, PromotionEventType viewEventType) => {    
         if (result.isSuccess()) {    
             // 成功を呼び出す    
         }    
});
#include "HivePromotion.h"

EHivePromotionType PromotionType = EHivePromotionType::BANNER;

 // 真の場合、「今日は再度視聴しない」ボタンは表示されません。ユーザーがすでに今日は再度視聴しないと設定していても、それは無視され、インタースティシャルバナーが表示されます。
bool bIsForced = false;

FHivePromotion::ShowPromotion(PromotionType, bIsForced, FHivePromotionViewDelegate::CreateLambda([this](const FHiveResultAPI& Result, const EHivePromotionEventType& PromotionEventType) {
        if (Result.IsSuccess()) {
                // API call success
        }
}));

APIリファレンス: Promotion::showPromotion

#include <HIVE_SDK_Plugin/HIVE_CPP.h>    
    using namespace std;    
    using namespace hive;    
    PromotionType promotionViewType = PromotionType::BANNER;    

    // 真の場合、「今日は再度視聴しない」ボタンは表示されません。ユーザーがすでに今日再度視聴しないように設定していても、それは無視され、インタースティシャルバナーが表示されます。    
    bool isForced = false;    

    Promotion::showPromotion(promotionViewType, isForced, [=](ResultAPI result, PromotionEventType viewEventType) {    
        if (result.isSuccess()) {    
            // call successful    
         }    
});

APIリファレンス: Promotion.showPromotion

import com.hive.Promotion    
    import com.hive.ResultAPI    
    val promotionViewType = Promotion.PromotionViewType.BANNER    
    // trueの場合、「今日はもう見ない」ボタンは表示されません。ユーザーがすでに今日見ないように設定していても、それは無視され、インタースティシャルバナーが表示されます。    
    val isForced = false    
    Promotion.showPromotion(promotionViewType, isForced, object : Promotion.PromotionViewListener {    
         override fun onPromotionView(result: ResultAPI, promotionEventType: Promotion.PromotionViewResultType) {    
             if (result.isSuccess) {    
                 // 成功した呼び出し    
             }    
         }    
})

APIリファレンス: com.hive.Promotion.showPromotion

import com.hive.Promotion;    
    import com.hive.ResultAPI;    
    Promotion.PromotionViewType promotionViewType = Promotion.PromotionViewType.BANNER;    
    // trueの場合、「今日は再度視聴しない」ボタンは表示されません。ユーザーがすでに今日再度視聴しないように設定していても、それは無視され、インタースティシャルバナーが表示されます。    
    boolean isForced = false;    
    Promotion.INSTANCE.showPromotion(promotionViewType, isForced, (result, promotionEventType) -> {    
         if (result.isSuccess()) {    
             // 成功した場合の呼び出し    
         }    
});

APIリファレンス: PromotionInterface.showPromotion

import HIVEService    
    let promotion: PromotionViewType = .banner    
    // もしtrueであれば、「今日は再度視聴しない」ボタンは表示されません。ユーザーがすでに今日再度見ないように設定していても、それは無視され、インタースティシャルバナーが表示されます。    
    let isForced = false    
    PromotionInterface.showPromotion(promotionViewType, isForced: isForced) { result, viewResultType in    
    if result.isSuccess() {    
    // 成功した場合の呼び出し    
    }    
}

APIリファレンス: HIVEPromotion::showPromotion

#import <HIVEService/HIVEService-Swift.h>    
    HIVEPromotionViewType promotionViewType = HIVEPromotionViewTypeBANNER;    

    // 真の場合、「今日は再度視聴しない」ボタンは表示されません。ユーザーがすでに今日再度表示しないように設定していても、それは無視され、インタースティシャルバナーが表示されます。    
    BOOL isForced = NO;    

    [HIVEPromotion showPromotion: promotionViewType isForced: isForced handler: ^(HIVEResultAPI *result, HIVEPromotionViewResultType viewResultType) {    
         if ([result isSuccess]) {    
              // call successful    
         }    
}];

クロスプロモーションのためのインタースティシャルバナー

showPromotion()メソッドを呼び出すと、以前に登録されたすべてのインタースティシャルバナーが表示されました。Hive SDK v4 24.2.0以降、クロスプロモーションインタースティシャルバナーを表示するかどうかを選択できるようになりました。

Configuration.setCrossPromotionBannerShowing(false)showPromotion()メソッドを呼び出す前に呼び出すと、アプリが起動したときにクロスプロモーションのインタースティシャルバナーは表示されません。trueで呼び出すと、バナーが表示されます。このメソッドはアプリがアクティブな限り影響を与え続けるため、Hive SDKが初期化された後、showPromotion()メソッドが呼び出される前に一度だけ呼び出す必要があります。アプリがアクティブな間に、このメソッドを異なる値(trueまたはfalse)で再度呼び出すことで、バナーの表示状態を変更できます。

Note

showCustomContents()メソッドを使用してスポットバナーを介してクロスプロモーションのフル広告を表示する際には、Configuration.setCrossPromotionBannerShowing()の呼び出しにも影響を受けます。

using hive;

// クロスプロモーションのインタースティシャルバナーを表示しないように設定する (false)
Configuration.setCrossPromotionBannerShowing(false);

// クロスプロモーションインタースティシャルバナーの表示状態を返す
Boolean crossPromotionBannerShowing = Configuration.getCrossPromotionBannerShowing();
#include <HIVE_SDK_Plugin/HIVE_CPP.h>
using namespace std;
using namespace hive;

// クロスプロモーションのインタースティシャルバナーを表示しないように設定する(false)
Configuration::setCrossPromotionBannerShowing(false);

// クロスプロモーションインタースティシャルバナーの表示状態を返す
bool crossPromotionBannerShowing = Configuration::getCrossPromotionBannerShowing();
import com.hive.Configuration

// クロスプロモーションのインタースティシャルバナーを表示しないように設定します (false)
Configuration.setCrossPromotionBannerShowing(false)

// クロスプロモーションインタースティシャルバナーの表示状況を返す
val crossPromotionBannerShowing = Configuration.getCrossPromotionBannerShowing()
import com.hive.Configuration;

// クロスプロモーションのインタースティシャルバナーを表示しないように設定する(false)
Configuration.INSTANCE.setCrossPromotionBannerShowing(false);

// クロスプロモーションインタースティシャルバナーの表示状態を返す
boolean crossPromotionBannerShowing = Configuration.INSTANCE.getCrossPromotionBannerShowing();
import HIVEService

// クロスプロモーションのインタースティシャルバナーを表示しないように設定する(false)
ConfigurationInterface.setCrossPromotionBannerShowing(false)

// クロスプロモーションインタースティシャルバナーの表示状態を返す
var crossPromotionBannerShowing: Bool = ConfigurationInterface.getCrossPromotionBannerShowing()
#import <HIVEService/HIVEService-Swift.h>

// クロスプロモーションのインタースティシャルバナーを表示しないように設定する (false)
[HIVEConfiguration setCrossPromotionBannerShowing:false];

// クロスプロモーションインタースティシャルバナーの表示状態を返す
BOOL crossPromotionBannerShowing = [HIVEConfiguration getCrossPromotionBannerShowing];
#import <HIVEService/HIVEService-Swift.h>

// クロスプロモーションのインタースティシャルバナーを表示しないように設定する(false)
[HIVEConfiguration setCrossPromotionBannerShowing:false];

// クロスプロモーションインタースティシャルバナーの表示状態を返す
BOOL crossPromotionBannerShowing = [HIVEConfiguration getCrossPromotionBannerShowing];