HIVE SDK for C++

HIVE_PlatformHelper.h
1
11#ifndef HIVE_PlatformHelper_hpp
12#define HIVE_PlatformHelper_hpp
13
14#include "HIVE_ResultAPI.h"
15
16NS_HIVE_BEGIN
17
18enum class PlatformShareType;
19enum class PlatformShareDataType;
20class PlatformShare;
24
29class HIVESDK_DLLEXPORT PlatformHelper
30{
31public:
32
40 typedef std::function<void(bool isSuccess)> onHIVEPlatformHelperShareHandler;
41
47 static void share(PlatformShare platformShare, onHIVEPlatformHelperShareHandler handler);
48
56 typedef std::function<void(ResultAPI const & result, std::vector<std::string> const & granted, std::vector<std::string> const & denied)> onRequestUserPermissionsHandler;
57
65 static void requestUserPermissions(std::vector<std::string> requests, onRequestUserPermissionsHandler handler);
66
78 static void completeUpdate(int completeState);
79
83 typedef std::function<void(ResultAPI const & result)> onShowInAppBrowserHandler;
84
94
95 // Native 영역에서 호출된 요청을 처리하기 위한 플러그인 내부 코드
96 static void executeEngine(picojson::value jsonParam);
97
116 static void openBrowser(const OpenBrowserParam param);
117
121 typedef std::function<void(ResultAPI const& result)> onShowInAppWebViewHandler;
122
132
140 typedef std::function<void(ResultAPI const& result, const char* parameters)> onParameters;
141
151 static void getLaunchParameters(onParameters paramListener);
152};
153
162{
163 TEXT = 1
164 , MEDIA = 2
165};
166
175{
176 SUBJECT = 0,
177 TEXT,
178 MEDIA,
179};
180
181class HIVESDK_DLLEXPORT PlatformShare
182{
183public:
184 PlatformShare();
185 ~PlatformShare();
186
187 PlatformShareType getShareType();
188 int getShareTypeInt();
189 void setShareType(PlatformShareType shareType);
190
191 std::string getSubject();
192 void setSubject(std::string subject);
193
194 std::string getText();
195 void setText(std::string text);
196
197 std::vector<std::string> getMedia();
198 void setMedia(std::vector<std::string> paths);
199
200private:
201 PlatformShareType shareType;
202
203 std::string subject;
204 std::string text;
205 std::vector<std::string> paths;
206};
207
217class HIVESDK_DLLEXPORT InAppBrowserParam
218{
219public:
220 std::string url;
221 std::string buttonColor;
222 std::string navigationColor;
223 bool urlBarHiding;
224 bool autoRedirectToExternalBrowser;
225
226 InAppBrowserParam(std::string url);
227 InAppBrowserParam(picojson::value jsonParam);
228
229 picojson::object toJson() const;
230 std::string toString() const;
231};
232
239class HIVESDK_DLLEXPORT OpenBrowserParam {
240public:
241 std::string url;
242 bool useIncognitoMode;
243
244 OpenBrowserParam(const std::string& url);
245};
246
254class HIVESDK_DLLEXPORT InAppWebViewParam
255{
256public:
257 std::string url;
258 bool useUserSession;
259 std::string postData;
260
261 InAppWebViewParam(std::string url);
262 InAppWebViewParam(picojson::value jsonParam);
263
264 picojson::object toJson() const;
265 std::string toString() const;
266};
267
268NS_HIVE_END
269
270#endif /* HIVE_PlatformHelper_hpp */
271
272
인앱 브라우저 설정을 위한 파라미터
Definition: HIVE_PlatformHelper.h:218
인앱 웹뷰 설정을 위한 파라미터
Definition: HIVE_PlatformHelper.h:255
외부 브라우저를 열기 위한 클래스
Definition: HIVE_PlatformHelper.h:239
플랫폼에서 지원하는 기능을 제공하는 클래스이다.
Definition: HIVE_PlatformHelper.h:30
std::function< void(ResultAPI const &result)> onShowInAppWebViewHandler
인 앱 웹뷰 콜백 리스너
Definition: HIVE_PlatformHelper.h:121
static void showInAppBrowser(InAppBrowserParam param, onShowInAppBrowserHandler handler)
인 앱 브라우저를 오픈한다.
static void showInAppWebView(InAppWebViewParam param, onShowInAppWebViewHandler handler)
인 앱 웹뷰를 오픈한다.
static void getLaunchParameters(onParameters paramListener)
게임 실행 시 사용된 인수 정보를 반환한다.
std::function< void(ResultAPI const &result, const char *parameters)> onParameters
게임 실행 시 사용된 인수 정보를 반환하는 콜백 리스너
Definition: HIVE_PlatformHelper.h:140
static void completeUpdate(int completeState)
업데이트 팝업 설정으로 백그라운드에서 앱 다운로드가 완료되면
static void share(PlatformShare platformShare, onHIVEPlatformHelperShareHandler handler)
하나 또는 복수 개의 미디어(이미지, 오디오, 비디오) 또는 텍스트를 공유한다.
std::function< void(ResultAPI const &result)> onShowInAppBrowserHandler
인 앱 브라우저 콜백 리스너
Definition: HIVE_PlatformHelper.h:83
Definition: HIVE_ResultAPI.h:64
std::function< void(ResultAPI const &result, std::vector< std::string > const &granted, std::vector< std::string > const &denied)> onRequestUserPermissionsHandler
Android에서 재요청된 OS 권한동의에 대한 결과 값을 반환한다.
Definition: HIVE_PlatformHelper.h:56
static void openBrowser(const OpenBrowserParam param)
외부 브라우저를 오픈합니다.
std::function< void(bool isSuccess)> onHIVEPlatformHelperShareHandler
Share 관련 동작이 완료되었을 때 호출됨.
Definition: HIVE_PlatformHelper.h:40
PlatformShareDataType
공유 데이터 타입
Definition: HIVE_PlatformHelper.h:175
static void requestUserPermissions(std::vector< std::string > requests, onRequestUserPermissionsHandler handler)
Android에서 사용자에게 OS 권한을 재요청.
PlatformShareType
공유 타입
Definition: HIVE_PlatformHelper.h:162
@ MEDIA
미디어
Copyright © Com2uS Platform Corporation. All Right Reserved. 이용약관 개인정보 처리방침