HIVE SDK for iOS

HIVEPromotion.h
이 파일의 문서화 페이지로 가기
1 
15 #import <Foundation/Foundation.h>
16 
17 @class HIVEResultAPI;
18 
26 typedef enum {
29  kHIVEPromotionViewResultTypeStartPlayback,
30  kHIVEPromotionViewResultTypeFinishPlayback,
32 
40 typedef enum {
46 
54 typedef enum{
60 
70 typedef enum {
76 
77 
85 typedef NS_ENUM(NSUInteger, HIVEOfferwallState) {
86  kHIVEOfferwallStateEnabled = 0,
87  kHIVEOfferwallStateDisabled,
88  kHIVEOfferwallStateUnknown,
89 };
90 
98 typedef NS_ENUM(NSInteger, HIVEPromotionCampaignType) {
99  kHIVEPromotionCampaignTypeEvent = 0,
100  kHIVEPromotionCampaignTypeNotice,
101 };
102 
110 typedef NS_ENUM(NSInteger, HIVEPromotionBannerType) {
111  kHIVEPromotionBannerTypeGreat = 0,
112  kHIVEPromotionBannerTypeSmall,
113  kHIVEPromotionBannerTypeRolling,
114 };
115 
116 #pragma mark - HIVEPromotion Models
117 
124 @interface HIVEPromotionBadge : NSObject <NSCopying>
125 
134 @property (nonatomic, readonly) HIVEPromotionBadgeTarget target;
135 @property (nonatomic, strong, readonly) NSString *contentsKey;
136 @property (nonatomic, strong, readonly) NSString *badgeType;
137 
138 + (instancetype)badgeWithTarget:(HIVEPromotionBadgeTarget)target contents:(NSString *)key badge:(NSString *)type;
139 - (NSString *)toJson;
140 
141 @end
142 
150 @interface HIVEPromotionBanner : NSObject <NSCopying>
151 
152 @property (nonatomic, readonly) NSInteger pid;
153 @property (nonatomic, strong, readonly) NSString* imageUrl;
154 @property (nonatomic, strong, readonly) NSString* linkUrl;
155 @property (nonatomic, strong, readonly) NSString* displayStartDate;
156 @property (nonatomic, strong, readonly) NSString* displayEndDate;
157 @property (nonatomic, readonly) NSInteger utcStartDate;
158 @property (nonatomic, readonly) NSInteger utcEndDate;
159 @property (nonatomic, strong, readonly) NSString* typeLink;
160 @property (nonatomic, strong, readonly) NSString* typeBanner;
161 
162 + (instancetype)initWithData:(NSDictionary *)data;
163 - (NSString*)toJson;
164 
165 @end
166 
167 
177 @interface HIVEPromotionViewInfo : NSObject <NSCopying>
178 
183 @property (nonatomic, strong, readonly) NSString *url;
184 @property (nonatomic, strong, readonly) NSString *postString;
185 
186 + (instancetype)infoWithResponse:(NSDictionary *)data;
187 - (NSString *)toJson;
188 
189 @end
190 
191 
206 
207 
220 typedef void (^HIVEPromotionInfoHandler)(HIVEResultAPI *result, NSArray<HIVEPromotionViewInfo *> *viewInfos);
221 
234 typedef void (^HIVEPromotionBadgeHandler)(HIVEResultAPI *result, NSArray<HIVEPromotionBadge *> *badgeInfos);
235 
243 typedef void (^HIVEPromotionBannerInfoHandler)(HIVEResultAPI *result, NSArray<HIVEPromotionBanner *> *bannerInfos);
244 
245 
254 typedef void (^HIVEPromotionShareHandler)(HIVEResultAPI *result);
255 
256 
257 #pragma mark - HIVEAppInvitation Models
258 
261 
262 
271 @interface HIVEAppInvitationData : NSObject <NSCopying>
272 
273 @property (nonatomic, copy) NSData *qrcode;
274 
275 @property (nonatomic, copy) NSString *inviteCommonLink;
276 @property (nonatomic, copy) NSString *inviteHivemsgLink;
277 @property (nonatomic, copy) NSString *inviteFacebookLink;
278 @property (nonatomic, copy) NSString *inviteMessage;
279 @property (nonatomic, copy) NSArray<HIVEAppInvitationCampaign *> *eachCampaigns;
280 @property (nonatomic, copy) NSArray<HIVEAppInvitationCampaignStage *> *stageCampaigns;
281 
282 @property (nonatomic, copy) NSString *originalJson;
283 
284 + (instancetype)infoWithData:(NSDictionary *)data;
285 - (NSString *)toJson;
286 
287 @end
288 
289 
301 @interface HIVEAppInvitationCampaign : NSObject <NSCopying>
302 
303 @property (nonatomic, copy) NSString *title;
304 @property (nonatomic, copy) NSString *desc;
305 @property (nonatomic, copy) NSString *imgURL;
306 
307 @property (nonatomic, copy) NSDictionary *item;
308 
309 @property (nonatomic) NSInteger count;
310 @property (nonatomic) NSInteger limit;
311 
312 + (instancetype)campaignWithData:(NSDictionary *)data;
313 - (NSString *)toJson;
314 
315 @end
316 
317 
329 @interface HIVEAppInvitationCampaignStage : HIVEAppInvitationCampaign
330 
331 @property (nonatomic) NSInteger goalCount;
332 @property (nonatomic) NSInteger goalTotal;
333 
334 
335 + (instancetype)campaignWithData:(NSDictionary *)data;
336 - (NSString *)toJson;
337 
338 @end
339 
352 typedef void (^HIVEAppInvitationDataHandler)(HIVEResultAPI *result, HIVEAppInvitationData *invitationData);
353 
354 
355 
356 #pragma mark - HIVEUserEngagement Models
357 
367 typedef NS_ENUM(NSUInteger, HIVEEngagementEventType) {
368  kHIVEEngagementEventType = 0,
369 
370  kHIVEEngagementEventTypePromotionView = 1,
371  kHIVEEngagementEventTypeOfferwallView = 2,
372  kHIVEEngagementEventTypeUserAcquistion = 3,
373  kHIVEEngagementEventTypeCoupon = 4,
374 
375  kHIVEEngagementEventTypeAuthLoginView = 5,
376 
377  kHIVEEngagementEventTypeSocialCafeView = 6,
378  kHIVEEngagementEventTypeSocialInquiryView = 7,
379  kHIVEEngagementEventTypeSocialInvitation = 8,
380  kHIVEEngagementEventTypeSocialMessage = 9,
381 
382  kHIVEEngagementEventTypeEvent = 10,
383 
384 
385  kHIVEEngagementEventTypeIapPurchase = 12,
386  kHIVEEngagementEventTypeIapPromote = 13,
387  // #8017 added.
388  kHIVEEngagementEventTypePromotionCompanion = 14
389 };
390 
391 
401 typedef NS_ENUM(NSUInteger, HIVEEngagementEventState) {
402  kHIVEEngagementStateBegin = 0,
403  kHIVEEngagementStateFinish = 1,
404  kHIVEEngagementStateEventStart = 2,
405  kHIVEEngagementStateEventEnd = 3,
406 };
407 
408 
428 typedef void (^HIVEEngagementHandler)(HIVEResultAPI *result, HIVEEngagementEventType engagementEventType, HIVEEngagementEventState engagementState, NSDictionary *param);
429 
430 
431 #pragma mark - HIVEPromotion Interface
432 
442 @interface HIVEPromotion : NSObject
443 
469 + (void)showPromotion:(HIVEPromotionViewType)type isForced:(BOOL)isForced handler:(HIVEPromotionViewHandler)handler;
470 
484 + (void)showCustomContents:(HIVEPromotionCustomType)type contents:(NSString *)key handler:(HIVEPromotionViewHandler)handler;
485 
499 + (HIVEOfferwallState)getOfferwallState;
500 
516 + (void)showOfferwall:(HIVEPromotionViewHandler)handler;
517 
518 
533 + (void)showNativeReview;
534 
548 + (void)getViewInfo:(HIVEPromotionCustomType)type contents:(NSString *)key handler:(HIVEPromotionInfoHandler)handler;
549 
562 + (void)getBadgeInfo:(HIVEPromotionBadgeHandler)handler;
563 
579 + (void)getBannerInfo:(HIVEPromotionCampaignType)campaignType bannerType:(HIVEPromotionBannerType)bannerType handler:(HIVEPromotionBannerInfoHandler)handler;
580 
600 + (void)getAppInvitationData:(HIVEAppInvitationDataHandler)handler;
601 
615 + (void)showUAShare:(NSString *)inviteMessage inviteLink:(NSString *)inviteLink handler:(HIVEPromotionShareHandler)handler;
616 
634 + (void)setAdditionalInfo:(NSString *)additionalInfo;
635 
636 
637 
638 
639 
640 #pragma mark - HIVEPromotion UserEngagement Interface
641 
658  + (HIVEResultAPI *)setEngagementReady:(BOOL)isReady;
659 
667 + (void)setEngagementHandler:(HIVEEngagementHandler)engagementHandler;
668 
686 + (BOOL)processURI:(NSURL *)URI;
687 
690 @end
void(^ HIVEAppInvitationDataHandler)(HIVEResultAPI *result, HIVEAppInvitationData *invitationData)
앱 초대(UserAcquisition) 정보 요청에 대한 정보 반환
Definition: HIVEPromotion.h:352
공지사항
Definition: HIVEPromotion.h:44
앱 초대를 위한 캠패인 정보 캠페인은 초대에 대한 보상을 달상하기 위한 조건을 명시한 데이터...
Definition: HIVEPromotion.h:301
커스텀뷰 타겟
Definition: HIVEPromotion.h:73
앱 초대(UserAcquisition)를 위한 정보.
Definition: HIVEPromotion.h:271
void(^ HIVEPromotionShareHandler)(HIVEResultAPI *result)
HIVE UA 공유 정보 반환
Definition: HIVEPromotion.h:254
새소식
Definition: HIVEPromotion.h:43
전면배너 (웹뷰만 사용하는 구 버전)
Definition: HIVEPromotion.h:41
typedef NS_ENUM(NSUInteger, HIVEOfferwallState)
게임내 오퍼월(무료 충전소) 을 호출 할 수 있는 버튼 노출 가능 상태 정보
Definition: HIVEPromotion.h:85
void(^ HIVEPromotionBadgeHandler)(HIVEResultAPI *result, NSArray< HIVEPromotionBadge *> *badgeInfos)
HIVE 프로모션 뱃지 정보 반환
Definition: HIVEPromotion.h:234
커스텀 뷰
Definition: HIVEPromotion.h:55
void(^ HIVEPromotionBannerInfoHandler)(HIVEResultAPI *result, NSArray< HIVEPromotionBanner *> *bannerInfos)
프로모션 배너 정보 API 호출에 대한 결과 통지
Definition: HIVEPromotion.h:243
프로모션 뷰 창이 닫혔을 때
Definition: HIVEPromotion.h:28
유저에게 새로운 프로모션 내용이 등록 되었음을 알려주기 위한 정보
Definition: HIVEPromotion.h:124
void(^ HIVEEngagementHandler)(HIVEResultAPI *result, HIVEEngagementEventType engagementEventType, HIVEEngagementEventState engagementState, NSDictionary *param)
SDK 가 특정한 조건에서 클라이언트에 개입(Engagement)하기 위한 이벤트 리스너.
Definition: HIVEPromotion.h:428
공지사항 타겟
Definition: HIVEPromotion.h:72
커스텀 보드 타겟
Definition: HIVEPromotion.h:74
Definition: HIVEResultAPI.h:25
HIVEPromotionViewResultType
프로모션 뷰 결과 통지시 이벤트 형태
Definition: HIVEPromotion.h:26
커스텀 보드
Definition: HIVEPromotion.h:56
void(^ HIVEPromotionInfoHandler)(HIVEResultAPI *result, NSArray< HIVEPromotionViewInfo *> *viewInfos)
HIVE 프로모션 웹 뷰의 UI 를 게임 UI 의 컨셉에 맞추기 위해서 프로모션 웹 뷰를 게임에서 직접 구현하기 ...
Definition: HIVEPromotion.h:220
void(^ HIVEPromotionViewHandler)(HIVEResultAPI *result, HIVEPromotionViewResultType type)
프로모션 뷰 API 결과 통지
Definition: HIVEPromotion.h:205
앱 초대를 위한 캠페인 정보 캠페인은 초대에 대한 보상을 달성하기 위한 조건을 명시한 데이터...
Definition: HIVEPromotion.h:329
전면배너
Definition: HIVEPromotion.h:42
HIVEPromotionBadgeTarget
프로모션 뱃지 정보가 표시될 대상 정보 만약 NOTICE이면 공지사항 관련 뱃지를 표시해야한다 ...
Definition: HIVEPromotion.h:70
HIVEPromotionCustomType
커스텀 컨텐츠의 형태
Definition: HIVEPromotion.h:54
프로모션 뷰 창이 열렸을 때
Definition: HIVEPromotion.h:27
HIVEPromotionViewType
프로모션 뷰 창의 형태
Definition: HIVEPromotion.h:40
스팟 배너
Definition: HIVEPromotion.h:57
NSString * badgeType
뱃지 종류 ("new" or "none" 이 올 수 있다)
Definition: HIVEPromotion.h:136
새소식 타겟
Definition: HIVEPromotion.h:71
Promotion 컨텐츠 화면 내용 (HIVE 프로모션 웹 뷰의 UI 를 게임 UI 의 컨셉에 맞추기 위해서 프로모션 웹 ...
Definition: HIVEPromotion.h:177
HIVEOfferwallState getOfferwallState()
게임내에서 무료 충전소를 노출하기 위한 버튼 UI 는 보여지거나 숨길 수 있도록 구성해야 한다...
특정 프로모션에 대한 배너 정보
Definition: HIVEPromotion.h:150
HIVE 프로모션은 게임을 이용하는 유저에게 게임의 새로운 소식이나 이벤트를 효과적으로 노출하는 기능을 ...
Definition: HIVEPromotion.h:442
NSString * contentsKey
타겟이 커스텀 컨텐츠일 경우 백오피스에 등록된 프로모션 고유 ID
Definition: HIVEPromotion.h:135
HIVEPromotionBadgeTarget target
뱃지를 표시해줘야하는 타겟 예를 들어서 NOTICE이면 공지사항 관련 뱃지를 표시해야 한다.
Definition: HIVEPromotion.h:134
void showNativeReview()
리뷰 유도 팝업 노출 게임 유저들의 긍정적인 평점 및 사용 후기는 다른 유저들이 게임을 이용하는데 영향...
다이렉트 캠페인
Definition: HIVEPromotion.h:58
Copyright © GAMEVIL COM2US PLATFORM Inc. All Right Reserved. 이용약관 개인정보 처리방침