콘텐츠로 이동

인게임 외부 브라우저 호출

Hive SDK v4 24.0.0 버전부터는 게임 안에서 외부 브라우저를 호출하는 기능을 제공합니다. 즉, 사용자가 게임 중에도 이탈할 필요 없이 외부 브라우저를 이용할 수 있습니다.

인게임 외부 브라우저 호출 기능은 사용자 이탈률 감소 뿐만 아니라, 보다 나은 사용자 경험을 제공합니다.

Note

자세한 내용은 Android Custom tabs, iOS SFSafariViewController 문서를 참고하세요.

사용하기

인 게임 외부 브라우저 호출 기능을 사용하는 방법을 안내합니다.

설정 기능

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 호출 성공
        }
}];