인게임 외부 브라우저 호출
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 호출 성공
}
}];