インタースティシャルバナーの表示
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の初期化プロセス中にアプリのローカルストレージに非同期で保存された画像が表示されます。キャッシュされた画像がない場合、画像はすぐにダウンロードされて表示されます。
フロントバナーの下部にある「n日間表示しない」機能では、Hive コンソールに登録されている場合にフロントバナーを表示しない期間を1日から7日まで設定できます。表示を停止する基準は、日付が変更される際の各地域の現地時間の真夜中です。詳細については、コンソールプロモーションガイドを参照してください。
Note
The PromotionType.BANNER type does not support the isForced option.
以下はインタースティシャルバナーを表示するためのサンプルコードです。
API リファレンス: hive.Promotion.showPromotion
using hive;    
PromotionType promotionViewType = PromotionType.BANNER;    
// isForcedはPromotionType.BANNERのときに無視されます
Boolean isForced = false;    
// 大きなバナーを表示    
Promotion.showPromotion(promotionViewType, isForced, (ResultAPI result, PromotionEventType viewEventType) => {    
     if (result.isSuccess()) {    
         // 成功を呼び出す    
     }    
});
#include "HivePromotion.h"
EHivePromotionType PromotionType = EHivePromotionType::BANNER;
// isForcedはEHivePromotionType::BANNERのときは無視されます   
bool bIsForced = false;
FHivePromotion::ShowPromotion(PromotionType, bIsForced, FHivePromotionViewDelegate::CreateLambda([this](const FHiveResultAPI& Result, const EHivePromotionEventType& PromotionEventType) {
        if (Result.IsSuccess()) {
                // call successful    
        }
}));
APIリファレンス: Promotion::showPromotion
#include <HIVE_SDK_Plugin/HIVE_CPP.h>   
using namespace std;    
using namespace hive;    
PromotionType promotionViewType = PromotionType::BANNER;    
// isForcedは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    
// isForcedはPromotion.PromotionViewType.BANNERのとき無視されます   
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;    
// isForcedはPromotion.PromotionViewType.BANNERのときは無視されます   
boolean isForced = false;    
Promotion.INSTANCE.showPromotion(promotionViewType, isForced, (result, promotionEventType) -> {    
     if (result.isSuccess()) {    
         // 成功した場合の呼び出し    
     }    
});
APIリファレンス: PromotionInterface.showPromotion
APIリファレンス: HIVEPromotion::showPromotion
#import <HIVEService/HIVEService-Swift.h>    
HIVEPromotionViewType promotionViewType = HIVEPromotionViewTypeBANNER;    
// isForcedは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()の呼び出しにも影響を受けます。
#include <HIVE_SDK_Plugin/HIVE_CPP.h>
using namespace std;
using namespace hive;
// クロスプロモーションのインタースティシャルバナーを表示しないように設定する(false)
Configuration::setCrossPromotionBannerShowing(false);
// クロスプロモーションインタースティシャルバナーの表示状態を返す
bool crossPromotionBannerShowing = Configuration::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];
