コンテンツにスキップ

Web コンテンツ呼び出し

ウェブコンテンツ呼び出しは、ゲーム内ブラウザ、ウェブビュー、または外部ブラウザを呼び出すことによって、ゲームから直接ウェブコンテンツを表示できる機能です。

ユーザーは、ゲームを離れることなく、各ゲーム環境に適したゲーム内ブラウザやウェブビューを呼び出すことで、ウェブコンテンツを表示できます。さらに、ゲームはさまざまなウェブコンテンツを柔軟に活用でき、ユーザー体験を向上させます。

ゲーム環境に応じて、以下のインターフェースを使用してWebコンテンツ呼び出しを実装できます:

Note

ゲーム内でブラウザを開くことに関する詳細については、AndroidのカスタムタブおよびiOSのSFSafariViewControllerのドキュメントを参照してください。

ゲーム内ブラウザで開く

ゲーム内ブラウザを通じて、別のブラウザを開かずに外部ウェブコンテンツを呼び出します。

Note

「ゲーム内ブラウザで開く」は現在、モバイルゲーム環境でのみサポートされています。

構成機能

設定機能

「ゲーム内ブラウザで開く」は「InAppBrowserParam`パラメータ」を使用して実装されています。

InAppBrowserParamパラメータの機能とデフォルト設定は以下の通りです:

機能 説明 デフォルト値
NavigationColor トップナビゲーションエリアの色を指定します。 OSのデフォルトカラー
ButtonColor (iOSのみ) トップナビゲーションエリアのボタンの色を指定します。 OSのデフォルトカラー
UrlBarHiding スクロールイベントが発生したときに、トップURL表示エリアを隠します。 true
AutoRedirectToExternalBrowser (Androidのみ) デバイスのデフォルトブラウザアプリがサポートされていない場合に、外部ブラウザ接続を自動的にサポートします。 true

例のコード

InAppBrowserParam の「ゲーム内ブラウザで開くを実装する」ための例のコードは以下の通りです:

using hive;

InAppBrowserParam param = new InAppBrowserParam.Builder("https://developers.withhive.com/")
                                                .setNavigationColor("#3891f0")
                                                .setButtonColor("#ffffff")
                                                .setUrlBarHiding(true)
                                                .setAutoRedirectToExternalBrowser(true)
                                                .build();

    PlatformHelper.showInAppBrowser(param, (ResultAPI result) => {
            if (result.isSuccess()) {
                    // API 호출 성공
            }
    });
#include "HivePlatformHelper.h"

FString URL = TEXT("https://developers.withhive.com/");
FHiveInAppBrowserParam Param(URL);
Param.NavigationColor = TEXT("3891f0");
Param.ButtonColor = TEXT("#FFFFFF");
Param.UrlBarHiding = true;
Param.AutoRedirectToExternalBrowser = true;

FHivePlatformHelper::ShowInAppBrowser(Param, FHivePlatformHelperOnShowInAppBrowserDelegate::CreateLambda([this](const FHiveResultAPI& Result) {
        if (Result.IsSuccess()) {
                // API 呼び出し成功
        }
}));
    #include <HIVE_SDK_Plugin/HIVE_CPP.h>
    using namespace std;
    using namespace hive;

    InAppBrowserParam *param = new InAppBrowserParam("https://developers.withhive.com/");
    param->navigationColor = "3891f0";
    param->buttonColor = "#ffffff";
    param->urlBarHiding = true;
    param->autoRedirectToExternalBrowser = true;

    PlatformHelper::showInAppBrowser(*param, [=](ResultAPI const & result) {
            if (result.isSuccess()) {
                    // API 호출 성공
            }
    });
    import com.hive.PlatformHelper;
    import com.hive.ResultAPI;

    PlatformHelper.InAppBrowserParam param = new PlatformHelper.InAppBrowserParam.Builder("https://developers.withhive.com/")
                                    .setNavigationColor("#3891f0")
                                    .setUrlBarHiding(true)
                                    .setAutoRedirectToExternalBrowser(true)
                                    .build();

    PlatformHelper.showInAppBrowser(param, result -> {
            if (result.isSuccess()) {
            // API呼び出し成功

    });
import com.hive.PlatformHelper;
import com.hive.ResultAPI;

val param = PlatformHelper.InAppBrowserParam.Builder("https://developers.withhive.com/")
                                        .setNavigationColor("#3891f0")
                                        .setUrlBarHiding(true)
                                        .setAutoRedirectToExternalBrowser(true)
                                        .build()

PlatformHelper.showInAppBrowser(param, object : PlatformHelper.InAppBrowserListener {
        override fun onInAppBrowser(result: ResultAPI) {
                if (result.isSuccess) {
                        // API 呼び出し成功
                }
        }
})
import HIVEService

let inAppBrowserParam = InAppBrowserParam.Builder(url: "https://developers.withhive.com/")
                                                .setNavigationColor("#3891f0")
                                                .setButtonColor("#ffffff")
                                                .setUrlBarHiding(true)
                                                .setAutoRedirectToExternalBrowserbuild(true)
                                                .build()

PlatformHelperInterface.showInAppBrowser(inAppBrowserParam) { resultAPI in
    if result.isSuccess() {
                // API 呼び出し成功
        }
};
#import <HIVEService/HIVEService-Swift.h>

HiveInAppBrowserParamBuilder *builder = [[HiveInAppBrowserParamBuilder alloc] initWithUrl: @"https://developers.withhive.com/"];
HiveInAppBrowserParam *inAppBrowserParam = [[[[[builder setNavigationColor: @"#3891f0"]
                                                        setButtonColor: @"#ffffff"]
                                                        setUrlBarHiding: @YES]
                                                        setAutoRedirectToExternalBrowser: @YES]
                                                        build];

[HIVEPlatformHelper showInAppBrowser: inAppBrowserParam handler: ^(HIVEResultAPI *result) {
        if ([result isSuccess]) {
                // API 呼び出し成功
        }
}];


ゲーム内ウェブビューで開く

ゲーム内でウェブビューを開いてウェブコンテンツを呼び出します。

設定機能

「ゲーム内ウェブビューで開く」は、InAppWebViewParamパラメータを使用して実装されています。InAppWebViewParamオブジェクトによって提供されるuseUserSessionパラメータは、ウェブビューにアプリ内ログインセッションを送信でき、postDataはアプリ開発者が望む追加情報を送信できます。

InAppWebViewParam パラメータの機能、デフォルト設定、および要件は次のとおりです:

機能 説明 デフォルト値 必須
postData アプリ開発者が送信する追加情報を含むデータ。WebViewに表示する追加情報がある場合に使用されます。 null X
useUserSession ログインセッション情報を含みます。JSON形式のpostDataplayer_idplayer_tokenを含みます。 false X
useGameWindow 現在のウィンドウにWebViewを表示するAndroid専用機能。停止せず、HiveThemeおよびHiveOrientationの設定は無視されます。 false X
Warning

useUserSessionを使用する際は、postDataはJSON形式でなければなりません。

例のコード

InAppWebViewParam の「ウェブビューで開く」の例コードは次のとおりです:

using hive;

InAppWebViewParam param = new InAppWebViewParam.Builder("https://developers.withhive.com/")
                                                .setUseUserSession(true)
                                                .setUseGameWindow(true)
                                                .build();

    PlatformHelper.showInAppWebView(param, (ResultAPI result) => {
            if (result.isSuccess()) {
                    // API call successful
            }
    });
#include "HivePlatformHelper.h"

FString URL = TEXT("https://developers.withhive.com/");
FHiveInAppWebViewParam Param(URL);
Param.UseUserSession = true;
Param.UseGameWindow = true;

FHivePlatformHelper::ShowInAppWebView(Param, FHivePlatformHelperOnShowInAppWebViewDelegate::CreateLambda([this](const FHiveResultAPI& Result) {
        if (Result.IsSuccess()) {
                // API call successful
        }
}));
#include <HIVE_SDK_Plugin/HIVE_CPP.h>
using namespace std;
using namespace hive;

InAppWebViewParam *param = new InAppWebViewParam("https://developers.withhive.com/");
param->useUserSession = true;
param->useGameWindow = true;

PlatformHelper::showInAppWebView(*param, [=](ResultAPI const & result) {
        if (result.isSuccess()) {
                // API call successful
        }
});
import com.hive.PlatformHelper;
import com.hive.ResultAPI;

PlatformHelper.InAppWebViewParam param = new PlatformHelper.InAppWebViewParam.Builder("https://developers.withhive.com/")
                                .setUseUserSession(true)
                                .setUseGameWindow(true)
                                .build();

PlatformHelper.showInAppWebView(param, result -> {
        if (result.isSuccess()) {
                // API呼び出し成功
        }     
});
import com.hive.PlatformHelper;
import com.hive.ResultAPI;

val param = PlatformHelper.InAppWebViewParam.Builder("https://developers.withhive.com/")
                                        .setUseUserSession(true)
                                        .setUseGameWindow(true)
                                        .build()

PlatformHelper.showInAppWebView(param, object : PlatformHelper.InAppWebViewListener {
        override fun onInAppWebView(result: ResultAPI) {
                if (result.isSuccess) {
                        // API呼び出し成功
                }
        }
})
import HIVEService

let inAppWebViewParam = InAppWebViewParam.Builder(url: "https://developers.withhive.com/")
                                                .setUseUserSession(true)
                                                .setUseGameWindow(true)
                                                .build()

PlatformHelperInterface.showInAppWebView(inAppWebViewParam) { resultAPI in
    if result.isSuccess() {
                // API呼び出し成功
        }
};
#import <HIVEService/HIVEService-Swift.h>

HiveInAppWebViewParamBuilder *builder = [[HiveInAppWebViewParamBuilder alloc] initWithUrl: @"https://developers.withhive.com/"];
HiveInAppWebViewParam *inAppWebViewParam = [[[builder setUseUserSession: @YES]
                                                        setUseGameWindow: @YES]
                                                        build];

[HIVEPlatformHelper showInAppWebView: inAppWebViewParam handler: ^(HIVEResultAPI *result) {
        if ([result isSuccess]) {
                // API呼び出し成功
        }
}];


外部ブラウザで開く

ゲームから別の外部ブラウザを接続してウェブコンテンツを呼び出します。

Note

「外部ブラウザで開く」はPCゲーム環境でのみサポートされており、Hive SDK v4 Windows 25.1.0以降で提供されます。

設定機能

OpenBrowserParam は外部ブラウザを呼び出すために使用され、追加で useIncognitoMode オプションを設定してシークレットモードを使用することができます。

「外部ブラウザで開く」はOpenBrowserParamパラメータを使用して実装されています。useIncognitoModeパラメータを使用して、シークレットモードのオプションを設定できます。

OpenBrowserParam パラメータの機能と要件は以下の通りです:

機能 説明 必須
url 外部ブラウザ呼び出しに使用するURL情報 O
useIncognitoMode * true: シークレットモードブラウザを呼び出す
* false: 通常モードブラウザを呼び出す
O

例のコード

OpenBrowserParamの「外部ブラウザで開く」の例コードは以下の通りです:

using hive;

OpenBrowserParam param = new OpenBrowserParam.Builder("https://developers.withhive.com/")
                                                .setUseIncognito(true)
                                                .build();

PlatformHelper.openBrowser(param);
#include "HivePlatformHelper.h"

FString URL = TEXT("https://developers.withhive.com/");
FHiveOpenBrowserParam Param(URL);
Param.useIncognitoMode = true;

FHivePlatformHelper::openBrowser(Param);
#include <HIVE_SDK_Plugin/HIVE_CPP.h>
using namespace std;
using namespace hive;

OpenBrowserParam *param = new OpenBrowserParam("https://developers.withhive.com/");
param->useIncognitoMode = true;

PlatformHelper::openBrowser(*param);