コンテンツにスキップ

ニュースページの表示

ニュースページでは、Hive コンソールに登録されたゲームのイベントバナーと通知を1ページで見ることができます。

Note

クーポン交換は、Androidデバイスのニュースページにのみ表示されます。

ニュースページの設定

ニュースページを構成するお知らせ、クロスプロモーション、イベントバナーの内容をHiveコンソールに登録します。コンポーネントの順序を指定することができ、例えば、お知らせを上部に配置するか、イベントバナーを上部に配置するか、イベントの終了間近を通知するバッジや、Hiveコンソールからギフトを受け取ることができる期間を通知するバッジを表示するかどうかを選択できます。登録に関する詳細は、Hiveコンソールプロモーションを参照してください。

ニュースページの表示

  • 次の画像はニュースページを示す例です。

ニュースページを表示するには、promotionTypePromotionType.NEWSに設定し、PromotionクラスのshowPromotion()メソッドを呼び出します。
以下はニュースページを表示するためのサンプルコードです。

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

    using hive;    
    PromotionType promotionViewType = PromotionType.NEWS;    

    // 真の場合、「今日は再度視聴しない」ボタンは表示されません。ユーザーがすでに今日再度視聴しないように設定していても、それは無視され、ニュースページが表示されます。    
    Boolean isForced = false;    
    Promotion.showPromotion(promotionViewType, isForced, (ResultAPI result, PromotionEventType viewEventType) => {    
         if (result.isSuccess()) {    
             // 成功した場合に呼び出す    
         }    
});
#include "HivePromotion.h"

EHivePromotionType PromotionType = EHivePromotionType::NEWS;

// もし真であれば、「今日は再度視聴しない」ボタンは表示されません。ユーザーがすでに今日再度視聴しないように設定していても、それは無視され、ニュースページが表示されます。
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::NEWS;    

    // 真の場合、「今日再度視聴しない」ボタンは表示されません。ユーザーがすでに今日再度視聴しないように設定していても、それは無視され、ニュースページが表示されます。    
    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.NEWS    
    // 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.NEWS;    
    // trueの場合、「今日は再度視聴しない」ボタンは表示されません。ユーザーがすでに今日再度視聴しないように設定していても、それは無視され、ニュースページが表示されます。    
    boolean isForced = false;    
    Promotion.INSTANCE.showPromotion(promotionViewType, isForced, (result, promotionEventType) -> {    
         if (result.isSuccess()) {    
             // 成功した呼び出し    
         }    
});

APIリファレンス: PromotionInterface.showPromotion

    import HIVEService    
    let promotionViewType: PromotionViewType = .news    
    // 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 = HIVEPromotionViewTypeNews;    

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

    [HIVEPromotion showPromotion: promotionViewType isForced: isForced handler: ^(HIVEResultAPI *result, HIVEPromotionViewResultType viewResultType) {    
         if ([result isSuccess]) {    
             // call successful    
         }    
}];
  • "ニュースページを再表示しない" オプション
    ユーザーがニュースページを1日見ないことを選択できるようにします。ページを表示しないためのチェックボックスを有効にするには、showPromotion()メソッドを呼び出すときに、isForcedパラメータをfalseに設定します Promotionクラスで。
  • 強制的にニュースページを表示
    ユーザーに"このページを再表示しない"オプションを提供しない場合、またはユーザーがすでに1日見ないことを選択している場合でも、ユーザーの設定を無視してニュースページを表示したい場合は、showPromotion()メソッドを呼び出すときにisForcedパラメータをtrueに設定します Promotion クラスで。
    isForcedパラメータをtrueに設定すると、ニュースページには"このページを再表示しない"のチェックボックスが表示されません。ユーザーがすでに"このページを再表示しない"にチェックを入れていても、ニュースページは強制的に表示されます。


通知が有効なニュースページを表示

お知らせのみを表示するニュースページを表示するには、promotionTypePromotionType.NOTICEに設定し、PromotionクラスのshowPromotion()メソッドを呼び出します。
以下はお知らせのリストを表示するためのサンプルコードです。

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

    using hive;    
    PromotionType promotionViewType = PromotionType.NOTICE;    

    // 真の場合、「今日は再度視聴しない」ボタンは表示されません。ユーザーがすでに今日再度視聴しないように設定していても、それは無視され、通知ページが表示されます。    
    Boolean isForced = false;    
    Promotion.showPromotion(promotionViewType, isForced, (ResultAPI result, PromotionEventType viewEventType) => {    
         if (result.isSuccess()) {    
             // 成功した場合の呼び出し    
         }    
});
#include "HivePromotion.h"

EHivePromotionType PromotionType = EHivePromotionType::Notice;

// 真の場合、「今日は再度視聴しない」ボタンは表示されません。ユーザーがすでに今日再度視聴しないように設定していても、それは無視され、通知ページが表示されます。 
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::NOTICE;    

    // 真の場合、「今日は再度視聴しない」ボタンは表示されません。ユーザーがすでに今日再度視聴しないように設定していても、それは無視され、通知ページが表示されます。    
    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.NOTICE    
    // trueの場合、「今日再度視聴しない」ボタンは表示されません。ユーザーがすでに今日再度視聴しないように設定していても、それは無視され、通知ページが表示されます。    
    val isForced = false    
    Promotion.showPromotion(promotionViewType, isForced, object : Promotion.PromotionViewListener {    
         override fun onPromotionView(result: ResultAPI, promotionEventType: Promotion.PromotionViewResultType) {    
             if (result.isSuccess) {    
                 // 成功を呼び出す    
             }    
         }    
})

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

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

APIリファレンス: PromotionInterface.showPromotion

import HIVEService    
    let promotionViewType: PromotionViewType = .notice    
    // 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 = HIVEPromotionViewTypeNotice;    

    // 真の場合、「今日再度視聴しない」ボタンは表示されません。ユーザーがすでに今日再度視聴しないように設定していても、それは無視され、通知ページが表示されます。    
    BOOL isForced = NO;    

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

特定のメニューがアクティブなニュースページを表示

特定のメニューでニュースページを表示するには、showNews()メソッドをPromotionクラスで呼び出し、promotionTypeをパラメータとして指定します。これはニュースページの設定に登録されています。
以下は、特定のメニューがアクティブな状態でニュースページを表示するためのサンプルコードです。

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

    using hive;    
    String menu = "Promotion type registered in Hive Console";    
    Promotion.showNews(menu, (ResultAPI result, PromotionEventType viewEventType) => {    
    if (result.isSuccess()) {    
             // call successful    
         }    
});

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

    #include <HIVE_SDK_Plugin/HIVE_CPP.h>    
    using namespace std;    
    using namespace hive;    
    string menu = "Hive コンソールに登録されたプロモーションタイプ";    
    Promotion::showNews(menu, [=](ResultAPI result, PromotionEventType viewEventType) {    
         if (result.isSuccess()) {    
             // 成功した呼び出し    
         }    
});

APIリファレンス: Promotion.showNews

    import com.hive.Promotion    
    import com.hive.ResultAPI    
    val menu = "Hive コンソールに登録されたプロモーションタイプ"    
    Promotion.showNews(menu, null, object : Promotion.PromotionViewListener {    
         override fun onPromotionView(result: ResultAPI, promotionEventType: Promotion.PromotionViewResultType) {    
             if (result.isSuccess) {    
                 // 成功を呼び出す    
             }    
         }    
})

APIリファレンス: Promotion .INSTANCE.showNews

    import com.hive.Promotion;    
    import com.hive.ResultAPI;    
    String menu = "Hive コンソールに登録されたプロモーションタイプ";    
    Promotion.INSTANCE.showNews(menu, null, (result, promotionEventType) -> {    
         if (result.isSuccess()) {    
             // 成功した場合の呼び出し    
         }    
});

API リファレンス: PromotionInterface.showNews

    import HIVEService    
    let menu = "Promotion type registered in Hive Console";    
    PromotionInterface.showNews(menu) { result, viewResultType in    
    if result.isSuccess() {    
    // call successful    
    }    
}

APIリファレンス: HIVEPromotion showNews

    #import <HIVEService/HIVEService-swift.h>    
    NSString *menu = @"Promotion type registered in Hive Console";    
    [HIVEPromotion showNews: menu handler: ^(HIVEResultAPI *result, HIVEPromotionViewResultType viewResultType) {    
        if ([result isSuccess]) {    
           // call successful    
       }    
}];

達成されたイベントバナーを強調表示するニュースページを表示

達成されたイベントを強調表示するニュースページを表示するには、PromotionクラスのshowNews()メソッドを呼び出すときに達成されたイベントバナー番号(pid)をパラメータとして使用します。以下は、ゲーマーが特定のイベントを達成したときに達成されたイベントバナーを強調表示するニュースページを表示するためのサンプルコードです。

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

// イベントメニューをアクティブにするためのパラメータを設定
    String menu = "event";
    // 達成されたイベントバナーを区別するためのPidリストを設定
    List<int> giftPidList = [101331, 121881, 253120, 100002]; // Pidの例
    // イベントメニューがアクティブにされたニュースページの結果を公開するコールバックハンドラ
    public void onPromotionViewCB(ResultAPI result, PromotionEventType promotionEventType) { if(result.isSuccess()){ // API呼び出し成功 } }

    // イベントメニューが有効化されたニュースページを公開する
    hive.Promotion.showNewsmenu, giftPidList, onPromotionViewCB);

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

// イベントメニューをアクティブにするためのパラメータを設定
    string menu = "event";
    // 達成されたイベントバナーを区別するためのPidリストを設定
    std::vector<int> giftPidList = {101331, 121881, 253120, 100002}; // Pidの例
    // イベントメニューをアクティブにしたニュースページを公開
    Promotion::showNewsmenu, giftPidList, [=]ResultAPI result, PromotionEventType promotionEventType){
            // イベントメニューをアクティブにしたニュースページの公開結果のコールバックハンドラ


if(result.isSuccess()){ // API call succeeded } });

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

    // イベントメニューをアクティブにするためのパラメータを設定
        val menu: String = "event"
        // 達成されたイベントバナーを区別するためのPidリストを設定
        val giftPidList = arrayListOf(101331, 121881, 253120, 100002) // Pidの例
        // イベントメニューをアクティブにしたニュースページを公開
        Promotion.showNewsmenu, giftPidList, object : Promotion.PromotionViewListener {
            override fun onPromotionViewresult: ResultAPI, promotionEventType: Promotion.PromotionViewResultType) {
                    // イベントメニューをアクティブにしたニュースページの結果のコールバックリスナー
                    if (result.isSuccess) {
                            // APIコール成功 
                    }
            }
    }

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

            // イベントメニューをアクティブにするためのパラメータを設定
            String menu = "event";
            // 達成されたイベントバナーを区別するためのpidリストを設定
            ArrayList<Integer> giftPidList = new ArrayList<Integer>(Arrays.asList1, 2, 3, 4));
            // イベントメニューがアクティブなニュースページを表示
            Promotion.showNewsmenu, giftPidList, new PromotionViewListener) {    @Override    public void onPromotionView@NotNull ResultAPI result, @NotNull PromotionViewResultType promotionEventType) {
                            // イベントメニューがアクティブなニュースページの結果のコールバックリスナー
            if (result.isSuccess) { // APIコール成功 } } });

APIリファレンス: HivePromotion:showCustomContents

            // イベントメニューをアクティブにするためのパラメータを設定
            String menu = "event"
            // 達成されたイベントバナーを区別するためのPidリストを設定
            let giftPidList = [101331, 121881, 253120, 100002] // 例のPid
            // イベントメニューがアクティブなニュースページを表示
            HivePromotion.showNewsmenu: menu, giftPidList: giftPidList) { result, type in
            // イベントメニューがアクティブなニュースページを表示した結果のコールバックリスナー
            if result.isSuccess {
                    // APIコール成功
            }
    }

APIリファレンス: HivePromotion:showCustomContents

        // イベントメニューをアクティブにするためのパラメータを設定
        NSString *menu = @"event";
        // 達成されたイベントバナーを区別するためのPidリストを設定
        NSArray *giftPidList = @[@101331, @121881, @253120, @100002]; // Pidの例
        // イベントメニューがアクティブなニュースページを表示
        [HIVEPromotion showNewsWithMenu:menu giftPidList:giftPidList handler:^HIVEResultAPI * result, HIVEPromotionViewResultType type) {
        // イベントメニューがアクティブなニュースページの結果のコールバックリスナー
        if (result.isSuccess) {
        // API呼び出し成功 
        }
        }];

データ更新APIの追加

Warning

ゲームスタジオはこのAPIを追加する必要があります。

ニュースページのデータは、サインイン後にHiveサーバーとの通信を通じて送信されます。ユーザーがゲーム内の設定(ゲーム言語やゲームサーバーなど)を変更した場合、データの更新が必要です。ユーザーが長時間ゲームをプレイしていると、データが最新の状態に更新されないことがあります。このような場合、ユーザーがゲームロビーにアクセスした際に、ゲームスタジオがニュースページのデータを手動で更新する必要があります。データ更新のためには、PromotionクラスのupdatePromotionData()メソッドを呼び出してください。
以下はニュースデータを更新するためのサンプルコードです。

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

using hive;

Promotion.updatePromotionData();
#include "HivePromotion.h"

FHivePromotion::UpdatePromotionData();

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

#include <HIVE_SDK_Plugin/HIVE_CPP.h>
using namespace std;
using namespace hive;

Promotion::updatePromotionData();

APIリファレンス: Promotion.updatePromotionData

import com.hive.Promotion

Promotion.updatePromotionData()

APIリファレンス: Promotion.INSTANCE.updatePromotionData

import com.hive.Promotion;

Promotion.INSTANCE.updatePromotionData();

APIリファレンス: PromotionInterface.updatePromotionData

import HIVEService

PromotionInterface.updatePromotionData()

API リファレンス: HIVEpromotion updatePromotionData

#import <HIVEService/HIVEService-Swift.h>

[HIVEPromoiton updatePromotionData];

改良されたデータ更新APIの追加

Warning

ゲームスタジオはこのAPIを追加する必要があります。改善される前にすでにAPIを使用している場合は、このAPIを追加する必要はありません。既存のAPIからの改善点は以下の通りです。

  • 'updatePromotionData API'を'setServerID API'の後に呼び出すロジックが改善され、同じ操作がupdateServerID APIを一度だけ呼び出すことで実行されるようになりました。
  • 'updatePromotionData API'を'setGameLanguage API'の後に呼び出すロジックが改善され、'updateGameLanguage API'を一度だけ呼び出すことで同じように機能するようになりました。

以下は、改善されたデータ更新APIを追加するための例コードです

APIリファレンス: hive.Promotion.updateServerId
APIリファレンス: hive.Promotion.updateGameLanguage

    using hive;    
  Configuration.updateServerId("server_001");    
    Configuration.updateGameLanguage("en");
#include "HiveConfiguration.h"

FString ServerId = TEXT("Server_001");
FHiveConfiguration::UpdateServerId(ServerId);

FString ゲーム言語 = TEXT("en");
FHiveConfiguration::UpdateGameLanguage(ゲーム言語);

APIリファレンス: Promotion.updateServerId
APIリファレンス: Promotion.updateGameLanguage

    #include <HIVE_SDK_Plugin/HIVE_CPP.h>    
        using namespace std;    
        using namespace hive;    
        Configuration::updateServerId("server_001");    
    Configuration::updateGameLanguage("en");

APIリファレンス: Configuration.updateServerId
APIリファレンス: Configuration.updateGameLanguage

    import com.hive.Configuration    
  Configuration.updateServerId("server_001")    
    Configuration.updateGameLanguage("en")

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

    import com.hive.Configuration;    
  Configuration.INSTANCE.updateServerId("server_001");    
    Configuration.INSTANCE.updateGameLanguage("en");

APIリファレンス: ConfigurationInterface .updateServerId
APIリファレンス: ConfigurationInterface .updateGameLanguage

    import HIVEService    
  ConfigurationInterface.updateServerId("server_001")    
    ConfigurationInterface.updateGameLanguage("en")

APIリファレンス: HIVEPromotion::updateServerId
APIリファレンス: HIVEPromotion::updateGameLanguage

    #import <HIVEService/HIVEService-Swift.h>    
  [HIVEConfiguration updateServerId: @"server_001"];    
    [HIVEConfiguration updateGameLanguage: @"en"];