콘텐츠로 이동

Result API code – Promotion

Book Mark

showPromotion showCustomContents getOfferwallState showOfferwall showReview
showNativeReview showExit getViewInfo getBadgeInfo getAppInvitationData
setAdditionalInfo setEngagementReady setEngagementListener showUAShare

hive.Promotion.showPromotion(PromotionType promotionType, Boolean isForced, onPromotionView listener)

PromotionType promotionType = PromotionType.BANNER;
Boolean isForce = true;
Promotion.showPromotion (promotionType, isForce, (ResultAPI result, PromotionEventType promotionEventType) => {
    switch(result.code) {
        case ResultAPI.Code.PromotionNetworkError:
        //기기의 네트워크 연결 상태를 확인하세요. 기기의 네트워크 연결 상태가 정상임에도 해당 에러가 발생하는 경우 에러 메시지와 함께 HIVE 에 문의주세요.
        break;
        case ResultAPI.Code.PromotionInvalidResponseData:
        ///전달받은 메시지와 함께 HIVE에 문의주세요.
        break;
        case ResultAPI.Code.PromotionServerResponseError:
        //전달받은 메시지와 함께 HIVE에 문의주세요.
        break;
        case ResultAPI.Code.PromotionStartPlayback:
        //동영상 재생 시작시 게임 음량을 최소화 하거나 음소거하세요.
        break;
        case ResultAPI.Code.PromotionFinishPlayback:
        //동영상 재생 종료 후 게임 음량을 되돌리세요.
        break;
        case ResultAPI.Code.PromotionCancelPlayback:
        //동영상 재생 종료 후 게임 음량을 되돌리세요.
        break;
        case ResultAPI.Code.PromotionYTPlayerError:
        //유튜브에서 영상 재생시 에러가 발생했음을 유저에게 알려주고 영상 재생을 종료하도록 안내하세요.
        break;
    }
});
PromotionType promotionType = PromotionType::BANNER;
bool isForce = true;

Promotion::showPromotion(promotionType, isForce,[](ResultAPI const & result, PromotionEventType promotionEventType){
    switch(result.code) {
    case ResultAPI::Code::PromotionNetworkError:
    //기기의 네트워크 연결 상태를 확인하세요. 기기의 네트워크 연결 상태가 정상임에도 해당 에러가 발생하는 경우 에러 메시지와 함께 HIVE 에 문의주세요.
    break;
    case ResultAPI::Code::PromotionInvalidResponseData:
    //전달받은 메시지와 함께 HIVE에 문의주세요.
    break;
    case ResultAPI::Code::PromotionServerResponseError:
    //전달받은 메시지와 함께 HIVE에 문의주세요.
    break;
    case ResultAPI::Code::PromotionStartPlayback:
    //동영상 재생 시작시 게임 음량을 최소화 하거나 음소거하세요.
    break;
    case ResultAPI::Code::PromotionFinishPlayback:
    //동영상 재생 종료 후 게임 음량을 되돌리세요.
    break;
    case ResultAPI::Code::PromotionCancelPlayback:
    //동영상 재생 종료 후 게임 음량을 되돌리세요.
    break;
    case ResultAPI::Code::PromotionYTPlayerError:
    //유튜브에서 영상 재생시 에러가 발생했음을 유저에게 알려주고 영상 재생을 종료하도록 안내하세요.
    break;
}
});
PromotionViewType promotionType = PromotionViewType.BANNER;
Boolean isForce = true;

Promotion.showPromotion(promotionType, isForce, new Promotion.PromotionViewListener() {
    @Override
    public void onPromotionView(ResultAPI result, Promotion.PromotionViewResultType promotionEventType) {
        switch(result.code) {
            case PromotionNetworkError:
                //기기의 네트워크 연결 상태를 확인하세요. 기기의 네트워크 연결 상태가 정상임에도 해당 에러가 발생하는 경우 에러 메시지와 함께 HIVE 에 문의주세요.
            case PromotionInvalidResponseData:
                //전달받은 메시지와 함께 HIVE에 문의주세요.
                break;
            case PromotionServerResponseError:
                //전달받은 메시지와 함께 HIVE에 문의주세요.
                break;
            case PromotionStartPlayback:
                //동영상 재생 시작시 게임 음량을 최소화 하거나 음소거하세요.
                break;
            case PromotionFinishPlayback:
                //동영상 재생 종료 후 게임 음량을 되돌리세요.
                break;
            case PromotionCancelPlayback:
                //동영상 재생 종료 후 게임 음량을 되돌리세요.
                break;
            case PromotionYTPlayerError:
                //유튜브에서 영상 재생시 에러가 발생했음을 유저에게 알려주고 영상 재생을 종료하도록 안내하세요.
                break;
        }

    }
});
HIVEPromotionViewType promotionViewType = kHIVEPromotionViewTypeBANNER;
BOOL isForce = YES;

[HIVEPromotion showPromotion:promotionViewType isForced:isForce handler:^(HIVEResultAPI  *result, HIVEPromotionViewResultType promotionResultType) {

    switch (result.code) {
        case kPromotionNetworkError:
            //기기의 네트워크 연결 상태를 확인하세요. 기기의 네트워크 연결 상태가 정상임에도 해당 에러가 발생하는 경우 에러 메시지와 함께 HIVE 에 문의주세요.
            break;
        case kPromotionInvalidResponseData:
            //전달받은 메시지와 함께 HIVE에 문의주세요.
            break;
        case kPromotionServerResponseError:
            //전달받은 메시지와 함께 HIVE에 문의주세요.
            break;
        case kPromotionStartPlayback:
            //동영상 재생 시작시 게임 음량을 최소화 하거나 음소거하세요.
            break;
        case kPromotionFinishPlayback:
            //동영상 재생 종료 후 게임 음량을 되돌리세요.
            break;
        case kPromotionCancelPlayback:
            //동영상 재생 종료 후 게임 음량을 되돌리세요.
            break;
        case kPromotionYTPlayerError:
            //유튜브에서 영상 재생시 에러가 발생했음을 유저에게 알려주고 영상 재생을 종료하도록 안내하세요.
            break;
        default:
            break;
    }
}];
Code Message How to solve
(필수 구현) PromotionNetworkError 서버 통신에 실패하였습니다. 기기의 네트워크 연결 상태를 확인하세요. 기기의 네트워크 연결 상태가 정상임에도 해당 에러가 발생하는 경우 에러 메시지와 함께 HIVE 에 문의주세요.
(필수 구현) PromotionInvalidResponseData HIVE 서버 통신 프로토콜 규약에 맞지 않은 데이터가 전달되었습니다. 전달받은 메시지와 함께 HIVE에 문의주세요.
(필수 구현) PromotionServerResponseError HIVE 서버 통신 응답값이 정상이 아닙니다. 전달받은 메시지와 함께 HIVE에 문의주세요.
(필수 구현) PromotionStartPlayback 동영상 재생을 시작합니다. 동영상 재생 시작시 게임 음량을 최소화 하거나 음소거하세요.
(필수 구현) PromotionFinishPlayback 동영상 재생이 종료되었습니다. 동영상 재생 종료 후 게임 음량을 되돌리세요.
(필수 구현) PromotionCancelPlayback 동영상 재생 중 유저가 닫기 버튼을 눌러 영상재생이 종료되었습니다. 동영상 재생 종료 후 게임 음량을 되돌리세요.
(필수 구현) PromotionYTPlayerError 유튜브 영상 재생 중 알 수 없는 에러가 발생하였습니다. 유튜브에서 영상 재생시 에러가 발생했음을 유저에게 알려주고 영상 재생을 종료하도록 안내하세요.
PromotionNotInitialized HIVE SDK 초기화가 되어있지 않습니다. AuthV4.setup API를 호출하여 HIVE SDK 초기화를 수행하세요. API 보기
PromotionAlreadyShowing Promotion 기능이 이미 진행 중입니다. showPromotion API, showCustomContents API 혹은 showOfferwall API가 이미 수행 중인 경우 중복으로 API 호출이 불가능합니다. 이전 기능을 종료한 후 호출해주세요.

hive.Promotion.showCustomContents (PromotionCustomType customType, String contentsKey, onPromotionView listener)

PromotionCustomType customType = PromotionCustomType.VIEW;
String contentsKey = "100000";

Promotion.showCustomContents (customType, contentsKey, (ResultAPI result, PromotionEventType promotionEventType) => {
    switch(result.code) {
        case ResultAPI.Code.PromotionNetworkError:
        //기기의 네트워크 연결 상태를 확인하세요. 기기의 네트워크 연결 상태가 정상임에도 해당 에러가 발생하는 경우 에러 메시지와 함께 HIVE 에 문의주세요.
        break;
        case ResultAPI.Code.PromotionInvalidResponseData:
        //전달받은 메시지와 함께 HIVE에 문의주세요.
        break;
        case ResultAPI.Code.PromotionServerResponseError:
        //전달받은 메시지와 함께 HIVE에 문의주세요.
        break;
        case ResultAPI.Code.PromotionStartPlayback:
        //동영상 재생 시작시 게임 음량을 최소화 하거나 음소거하세요.
        break;
        case ResultAPI.Code.PromotionFinishPlayback:
        //동영상 재생 종료 후 게임 음량을 되돌리세요.
        break;
        case ResultAPI.Code.PromotionCancelPlayback:
        //동영상 재생 종료 후 게임 음량을 되돌리세요.
        break;
        case ResultAPI.Code.PromotionYTPlayerError:
        //유튜브에서 영상 재생시 에러가 발생했음을 유저에게 알려주고 영상 재생을 종료하도록 안내하세요.
        break;
    }
});
PromotionType customType = PromotionType::BANNER;
std::string contentsKey = "1000000";


Promotion::showCustomContents(customType, contentsKey,[](ResultAPI const & result, PromotionEventType promotionEventType){
    switch(result.code) {
        case ResultAPI::Code::PromotionNetworkError:
        //기기의 네트워크 연결 상태를 확인하세요. 기기의 네트워크 연결 상태가 정상임에도 해당 에러가 발생하는 경우 에러 메시지와 함께 HIVE 에 문의주세요.
        break;
        case ResultAPI::Code::PromotionInvalidResponseData:
        //전달받은 메시지와 함께 HIVE에 문의주세요.
        break;
        case ResultAPI::Code::PromotionServerResponseError:
        //전달받은 메시지와 함께 HIVE에 문의주세요.
        break;
        case ResultAPI::Code::PromotionStartPlayback:
        //동영상 재생 시작시 게임 음량을 최소화 하거나 음소거하세요.
        break;
        case ResultAPI::Code::PromotionFinishPlayback:
        //동영상 재생 종료 후 게임 음량을 되돌리세요.
        break;
        case ResultAPI::Code::PromotionCancelPlayback:
        //동영상 재생 종료 후 게임 음량을 되돌리세요.
        break;
        case ResultAPI::Code::PromotionYTPlayerError:
        //유튜브에서 영상 재생시 에러가 발생했음을 유저에게 알려주고 영상 재생을 종료하도록 안내하세요.
        break;
    }
});
PromotionCustomType customType = PromotionCustomType.VIEW;
String contentsKey = "100000";

Promotion.showCustomContents(customType, content_key, new Promotion.PromotionViewListener() {
    @Override
    public void onPromotionView(ResultAPI result, Promotion.PromotionViewResultType promotionEventType) {
        switch(result.code) {
            case PromotionNetworkError:
                //기기의 네트워크 연결 상태를 확인하세요. 기기의 네트워크 연결 상태가 정상임에도 해당 에러가 발생하는 경우 에러 메시지와 함께 HIVE 에 문의주세요.
                break;
            case PromotionInvalidResponseData:
                //전달받은 메시지와 함께 HIVE에 문의주세요.
                break;
            case PromotionServerResponseError:
                //전달받은 메시지와 함께 HIVE에 문의주세요.
                break;
            case PromotionStartPlayback:
                //동영상 재생 시작시 게임 음량을 최소화 하거나 음소거하세요.
                break;
            case PromotionFinishPlayback:
                //동영상 재생 종료 후 게임 음량을 되돌리세요.
                break;
            case PromotionCancelPlayback:
                //동영상 재생 종료 후 게임 음량을 되돌리세요.
                break;
            case PromotionYTPlayerError:
                //유튜브에서 영상 재생시 에러가 발생했음을 유저에게 알려주고 영상 재생을 종료하도록 안내하세요.
                break;
        }

    }
});
HIVEPromotionCustomType customType = kHIVEPromotionCustomTypeVIEW;
NSString *contentsKey = [NSString stringWithFormat:@"100000"];

[HIVEPromotion showCustomContents:customType contents:contentsKey handler:^(HIVEResultAPI *result, HIVEPromotionViewResultType promotionResultType){

    switch (result.code) {
        case kPromotionNetworkError:
            //기기의 네트워크 연결 상태를 확인하세요. 기기의 네트워크 연결 상태가 정상임에도 해당 에러가 발생하는 경우 에러 메시지와 함께 HIVE 에 문의주세요.
            break;
        case kPromotionInvalidResponseData:
            //전달받은 메시지와 함께 HIVE에 문의주세요.
            break;
        case kPromotionServerResponseError:
            //전달받은 메시지와 함께 HIVE에 문의주세요.
            break;
        case kPromotionStartPlayback:
            //동영상 재생 시작시 게임 음량을 최소화 하거나 음소거하세요.
            break;
        case kPromotionFinishPlayback:
            //동영상 재생 종료 후 게임 음량을 되돌리세요.
            break;
        case kPromotionCancelPlayback:
            //동영상 재생 종료 후 게임 음량을 되돌리세요.
            break;
        case kPromotionYTPlayerError:
            //유튜브에서 영상 재생시 에러가 발생했음을 유저에게 알려주고 영상 재생을 종료하도록 안내하세요.
            break;
        default:
            break;
    }
}];
Code Message How to solve
(필수 구현) PromotionNetworkError HIVE 서버 통신에 실패하였습니다. 기기의 네트워크 연결 상태를 확인하세요. 기기의 네트워크 연결 상태가 정상임에도 해당 에러가 발생하는 경우 에러 메시지와 함께 HIVE 에 문의주세요.
(필수 구현) PromotionInvalidResponseData HIVE 서버 통신 프로토콜 규약에 맞지 않은 데이터가 전달되었습니다. 전달받은 메시지와 함께 HIVE에 문의주세요.
(필수 구현) PromotionServerResponseError HIVE 서버 통신 응답값이 정상이 아닙니다. 전달받은 메시지와 함께 HIVE에 문의주세요.
(필수 구현) PromotionStartPlayback 동영상 재생을 시작합니다. 동영상 재생 시작시 게임 음량을 최소화 하거나 음소거하세요.
(필수 구현) PromotionFinishPlayback 동영상 재생이 종료되었습니다. 동영상 재생 종료 후 게임 음량을 되돌리세요.
(필수 구현) PromotionCancelPlayback 동영상 재생 중 유저가 닫기 버튼을 눌러 영상재생이 종료되었습니다. 동영상 재생 종료 후 게임 음량을 되돌리세요.
(필수 구현) PromotionYTPlayerError 유튜브 영상 재생 중 알 수 없는 에러가 발생하였습니다. 유튜브에서 영상 재생시 에러가 발생했음을 유저에게 알려주고 영상 재생을 종료하도록 안내하세요.
PromotionNotInitialized HIVE SDK 초기화가 되어있지 않습니다. AuthV4.setup API를 호출하여 HIVE SDK 초기화를 수행하세요. API 보기
PromotionAlreadyShowing Promotion 기능이 이미 진행 중입니다. showPromotion API, showCustomContents API 혹은 showOfferwall API가 이미 수행 중인 경우 중복으로 API 호출이 불가능합니다. 이전 기능을 종료한 후 호출해주세요.

hive.Promotion.getOfferwallState ()

Code Message How to solve
Result API 없음

hive.Promotion.showOfferwall (onPromotionView listener)

Promotion.showOfferwall ((ResultAPI result, PromotionEventType promotionEventType) => {
    switch(result.code) {
        case ResultAPI.Code.PromotionNetworkError:
        //기기의 네트워크 연결 상태를 확인하세요. 기기의 네트워크 연결 상태가 정상임에도 해당 에러가 발생하는 경우 에러 메시지와 함께 HIVE 에 문의주세요.
        break;
        case ResultAPI.Code.PromotionInvalidResponseData:
        //전달받은 메시지와 함께 HIVE에 문의주세요.
        break;
        case ResultAPI.Code.PromotionServerResponseError:
        //전달받은 메시지와 함께 HIVE에 문의주세요.
        break;
        case ResultAPI.Code.PromotionStartPlayback:
        //동영상 재생 시작시 게임 음량을 최소화 하거나 음소거하세요.
        break;
        case ResultAPI.Code.PromotionFinishPlayback:
        //동영상 재생 종료 후 게임 음량을 되돌리세요.
        break;
        case ResultAPI.Code.PromotionCancelPlayback:
        //동영상 재생 종료 후 게임 음량을 되돌리세요.
        break;
        case ResultAPI.Code.PromotionYTPlayerError:
        //유튜브에서 영상 재생시 에러가 발생했음을 유저에게 알려주고 영상 재생을 종료하도록 안내하세요.
        break;
    }
});
Promotion::showOfferwall([](ResultAPI const & result, PromotionEventType promotionEventType){
    switch(result.code) {
        case ResultAPI::Code::PromotionNetworkError:
        //기기의 네트워크 연결 상태를 확인하세요. 기기의 네트워크 연결 상태가 정상임에도 해당 에러가 발생하는 경우 에러 메시지와 함께 HIVE 에 문의주세요.
        break;
        case ResultAPI::Code::PromotionInvalidResponseData:
        //전달받은 메시지와 함께 HIVE에 문의주세요.
        break;
        case ResultAPI::Code::PromotionServerResponseError:
        //전달받은 메시지와 함께 HIVE에 문의주세요.
        break;
        case ResultAPI::Code::PromotionStartPlayback:
        //동영상 재생 시작시 게임 음량을 최소화 하거나 음소거하세요.
        break;
        case ResultAPI::Code::PromotionFinishPlayback:
        //동영상 재생 종료 후 게임 음량을 되돌리세요.
        break;
        case ResultAPI::Code::PromotionCancelPlayback:
        //동영상 재생 종료 후 게임 음량을 되돌리세요.
        break;
        case ResultAPI::Code::PromotionYTPlayerError:
        //유튜브에서 영상 재생시 에러가 발생했음을 유저에게 알려주고 영상 재생을 종료하도록 안내하세요.
        break;
    }
});
Promotion.showOfferwall(new Promotion.PromotionViewListener() {
    @Override
    public void onPromotionView(ResultAPI result, Promotion.PromotionViewResultType promotionEventType) {
        switch(result.code) {
            case PromotionNetworkError:
                //기기의 네트워크 연결 상태를 확인하세요. 기기의 네트워크 연결 상태가 정상임에도 해당 에러가 발생하는 경우 에러 메시지와 함께 HIVE 에 문의주세요.
                break;
            case PromotionInvalidResponseData:
                //전달받은 메시지와 함께 HIVE에 문의주세요.
                break;
            case PromotionServerResponseError:
                //전달받은 메시지와 함께 HIVE에 문의주세요.
                break;
            case PromotionStartPlayback:
                //동영상 재생 시작시 게임 음량을 최소화 하거나 음소거하세요.
                break;
            case PromotionFinishPlayback:
                //동영상 재생 종료 후 게임 음량을 되돌리세요.
                break;
            case PromotionCancelPlayback:
                //동영상 재생 종료 후 게임 음량을 되돌리세요.
                break;
            case PromotionYTPlayerError:
                //유튜브에서 영상 재생시 에러가 발생했음을 유저에게 알려주고 영상 재생을 종료하도록 안내하세요.
                break;
        }

    }
});
[HIVEPromotion showOfferwall:^(HIVEResultAPI *result, HIVEPromotionViewResultType promotionResultType){
    switch (result.code) {
        case kPromotionNetworkError:
            //기기의 네트워크 연결 상태를 확인하세요. 기기의 네트워크 연결 상태가 정상임에도 해당 에러가 발생하는 경우 에러 메시지와 함께 HIVE 에 문의주세요.
            break;
        case kPromotionInvalidResponseData:
            //전달받은 메시지와 함께 HIVE에 문의주세요.
            break;
        case kPromotionServerResponseError:
            //전달받은 메시지와 함께 HIVE에 문의주세요.
            break;
        case kPromotionStartPlayback:
            //동영상 재생 시작시 게임 음량을 최소화 하거나 음소거하세요.
            break;
        case kPromotionFinishPlayback:
            //동영상 재생 종료 후 게임 음량을 되돌리세요.
            break;
        case kPromotionCancelPlayback:
            //동영상 재생 종료 후 게임 음량을 되돌리세요.
            break;
        case kPromotionYTPlayerError:
            //유튜브에서 영상 재생시 에러가 발생했음을 유저에게 알려주고 영상 재생을 종료하도록 안내하세요.
            break;
        default:
            break;
    }
}];
Code Message How to solve
(필수 구현) PromotionNetworkError HIVE 서버 통신에 실패하였습니다. 기기의 네트워크 연결 상태를 확인하세요. 기기의 네트워크 연결 상태가 정상임에도 해당 에러가 발생하는 경우 에러 메시지와 함께 HIVE 에 문의주세요.
(필수 구현) PromotionInvalidResponseData HIVE 서버 통신 프로토콜 규약에 맞지 않은 데이터가 전달되었습니다. 전달받은 메시지와 함께 HIVE에 문의주세요.
(필수 구현) PromotionServerResponseError HIVE 서버 통신 응답값이 정상이 아닙니다. 전달받은 메시지와 함께 HIVE에 문의주세요.
(필수 구현) PromotionStartPlayback 동영상 재생을 시작합니다. 동영상 재생 시작시 게임 음량을 최소화 하거나 음소거하세요.
(필수 구현) PromotionFinishPlayback 동영상 재생이 종료되었습니다. 동영상 재생 종료 후 게임 음량을 되돌리세요.
(필수 구현) PromotionCancelPlayback 동영상 재생 중 유저가 닫기 버튼을 눌러 영상재생이 종료되었습니다. 동영상 재생 종료 후 게임 음량을 되돌리세요.
(필수 구현) PromotionYTPlayerError 유튜브 영상 재생 중 알 수 없는 에러가 발생하였습니다. 유튜브에서 영상 재생시 에러가 발생했음을 유저에게 알려주고 영상 재생을 종료하도록 안내하세요.
PromotionNotInitialized HIVE SDK 초기화가 되어있지 않습니다. AuthV4.setup API를 호출하여 HIVE SDK 초기화를 수행하세요. API 보기
PromotionAlreadyShowing Promotion 기능이 이미 진행 중입니다. showPromotion API, showCustomContents API 혹은 showOfferwall API가 이미 수행 중인 경우 중복으로 API 호출이 불가능합니다. 이전 기능을 종료한 후 호출해주세요.

hive.Promotion.showReview (onPromotionView listener)

Promotion.showReview ((ResultAPI result, PromotionEventType promotionEventType) => {
    switch(result.code) {
        case ResultAPI.Code.PromotionNetworkError:
        //기기의 네트워크 연결 상태를 확인하세요. 기기의 네트워크 연결 상태가 정상임에도 해당 에러가 발생하는 경우 에러 메시지와 함께 HIVE 에 문의주세요.
        break;
        case ResultAPI.Code.PromotionInvalidResponseData:
        //전달받은 메시지와 함께 HIVE에 문의주세요.
        break;
        case ResultAPI.Code.PromotionServerResponseError:
        //전달받은 메시지와 함께 HIVE에 문의주세요.
        break;
    }
});
Promotion::showReview([](ResultAPI const & result, PromotionEventType promotionEventType){
    switch(result.code) {
        case ResultAPI::Code::PromotionNetworkError:
        //기기의 네트워크 연결 상태를 확인하세요. 기기의 네트워크 연결 상태가 정상임에도 해당 에러가 발생하는 경우 에러 메시지와 함께 HIVE 에 문의주세요.
        break;
        case ResultAPI::Code::PromotionInvalidResponseData:
        //전달받은 메시지와 함께 HIVE에 문의주세요.
        break;
        case ResultAPI::Code::PromotionServerResponseError:
        //전달받은 메시지와 함께 HIVE에 문의주세요.
        break;
    }
});
Promotion.showReview(new Promotion.PromotionViewListener() {
    @Override
    public void onPromotionView(ResultAPI result, Promotion.PromotionViewResultType promotionEventType) {
        switch(result.code) {
            case PromotionNetworkError:
                //기기의 네트워크 연결 상태를 확인하세요. 기기의 네트워크 연결 상태가 정상임에도 해당 에러가 발생하는 경우 에러 메시지와 함께 HIVE 에 문의주세요.
                break;
            case PromotionInvalidResponseData:
                //전달받은 메시지와 함께 HIVE에 문의주세요.
                break;
            case PromotionServerResponseError:
                //전달받은 메시지와 함께 HIVE에 문의주세요.
                break;
        }
    }
});
[HIVEPromotion showReview:^(HIVEResultAPI *result, HIVEPromotionViewResultType promotionResultType) {
    switch (result.code) {
        case kPromotionNetworkError:
            //기기의 네트워크 연결 상태를 확인하세요. 기기의 네트워크 연결 상태가 정상임에도 해당 에러가 발생하는 경우 에러 메시지와 함께 HIVE 에 문의주세요.
            break;
        case kPromotionInvalidResponseData:
            //전달받은 메시지와 함께 HIVE에 문의주세요.
            break;
        case kPromotionServerResponseError:
            //전달받은 메시지와 함께 HIVE에 문의주세요.
            break;
        default:
            break;
    }
}];
Code Message How to solve
(필수 구현) PromotionNetworkError HIVE 서버 통신에 실패하였습니다. Removed in HIVE SDK v4.11.4 기기의 네트워크 연결 상태를 확인하세요. 기기의 네트워크 연결 상태가 정상임에도 해당 에러가 발생하는 경우 에러 메시지와 함께 HIVE 에 문의주세요.
(필수 구현) PromotionServerResponseError HIVE 서버 통신 응답값이 정상이 아닙니다. Removed in HIVE SDK v4.11.4 전달받은 메시지와 함께 HIVE에 문의주세요.
(필수 구현) PromotionInvalidResponseData HIVE 서버 통신 프로토콜 규약에 맞지 않은 데이터가 전달되었습니다. Removed in HIVE SDK v4.11.4 전달받은 메시지와 함께 HIVE에 문의주세요.
PromotionNotInitialized HIVE SDK 초기화가 되어있지 않습니다. Removed in HIVE SDK v4.11.4 AuthV4.setup API를 호출하여 HIVE SDK 초기화를 수행하세요. API 보기
PromotionAlreadyShowing Promotion 기능이 이미 진행 중입니다. Removed in HIVE SDK v4.11.4 showPromotion API, showCustomContents API 혹은 showOfferwall API가 이미 수행 중인 경우 중복으로 API 호출이 불가능합니다. 이전 기능을 종료한 후 호출해주세요.

hive.Promotion.showNativeReview ()

Code Message How to solve
Result API 없음

hive.Promotion.showExit (onPromotionView listener) (Android only)

Promotion.showExit ((ResultAPI result, PromotionEventType promotionEventType) => {
    switch(result.code) {
        case ResultAPI.Code.PromotionNetworkError:
        // 기기의 네트워크 연결 상태를 확인하세요. 기기의 네트워크 연결 상태가 정상임에도 해당 에러가 발생하는 경우 에러 메시지와 함께 HIVE 에 문의주세요.
        break;
    }
});
Promotion::showExit([](ResultAPI const & result, PromotionEventType promotionEventType){
    switch(result.code) {
        case ResultAPI::Code::PromotionNetworkError:
        // 기기의 네트워크 연결 상태를 확인하세요. 기기의 네트워크 연결 상태가 정상임에도 해당 에러가 발생하는 경우 에러 메시지와 함께 HIVE 에 문의주세요.
        break;
    }
});
Promotion.showExit(new Promotion.PromotionViewListener() {
    @Override
    public void onPromotionView(ResultAPI result, Promotion.PromotionViewResultType promotionEventType) {
        switch(result.code) {
            case PromotionNetworkError:
                // 기기의 네트워크 연결 상태를 확인하세요. 기기의 네트워크 연결 상태가 정상임에도 해당 에러가 발생하는 경우 에러 메시지와 함께 HIVE 에 문의주세요.
                break;
        }

    }
});

Code Message How to solve
(필수 구현) PromotionNetworkError HIVE 서버 통신에 실패하였습니다. 기기의 네트워크 연결 상태를 확인하세요. 기기의 네트워크 연결 상태가 정상임에도 해당 에러가 발생하는 경우 에러 메시지와 함께 HIVE 에 문의주세요.
PromotionAlreadyShowing Promotion 기능이 이미 진행 중입니다. Promotion.showExit API가 이미 수행 중인 경우 중복으로 API 호출이 불가능합니다. 이전 기능을 종료한 후 호출해주세요.

hive.Promotion.getViewInfo (PromotionCustomType customType, String contentsKey, onPromotionViewInfo listener)

PromotionCustomType customType = PromotionCustomType.VIEW;
String contentsKey = "100000";

Promotion.getViewInfo (customType, contentsKey, (ResultAPI result, List<PromotionViewInfo> promotionViewInfoList) => {
    switch(result.code) {
        case ResultAPI.Code.PromotionNetworkError:
        //기기의 네트워크 연결 상태를 확인하세요. 기기의 네트워크 연결 상태가 정상임에도 해당 에러가 발생하는 경우 에러 메시지와 함께 HIVE 에 문의주세요.
        break;
        case ResultAPI.Code.PromotionServerResponseError:
        //전달받은 메시지와 함께 HIVE에 문의주세요.
        break;
    }
});
PromotionCustomType customType = PromotionCustomType::VIEW;
std::string contentsKey = "100000";

Promotion::getViewInfo(customType, contentsKey, [](ResultAPI const & result, std::vector<PromotionViewInfo> const & promotionViewInfo){
    switch(result.code) {
        case ResultAPI::Code::PromotionNetworkError:
        //기기의 네트워크 연결 상태를 확인하세요. 기기의 네트워크 연결 상태가 정상임에도 해당 에러가 발생하는 경우 에러 메시지와 함께 HIVE 에 문의주세요.
        break;
        case ResultAPI::Code::PromotionServerResponseError:
        //전달받은 메시지와 함께 HIVE에 문의주세요.
        break;
    }
});
PromotionCustomType customType = PromotionCustomType.VIEW;
String contentsKey = "100000";

Promotion.getViewInfo(customType, contentsKey, new PromotionViewInfoListener() {
    @Override
    public void onReceiveInfo(ResultAPI result, ArrayList<PromotionViewInfo> viewInfo) {
        switch(result.code) {
            case PromotionNetworkError:
                //기기의 네트워크 연결 상태를 확인하세요. 기기의 네트워크 연결 상태가 정상임에도 해당 에러가 발생하는 경우 에러 메시지와 함께 HIVE 에 문의주세요.
                break;
            case PromotionServerResponseError:
                //전달받은 메시지와 함께 HIVE에 문의주세요.
                break;
        }
    }
});
HIVEPromotionCustomType customType = kHIVEPromotionCustomTypeVIEW;
NSString* contentsKey = [NSString stringWithFormat:@"100000"];

[HIVEPromotion getViewInfo:customType contents:contentsKey handler:^(HIVEResultAPI *result, NSArray<HIVEPromotionViewInfo *> *viewInfos) {
    switch (result.code) {
        case kPromotionNetworkError:
            //기기의 네트워크 연결 상태를 확인하세요. 기기의 네트워크 연결 상태가 정상임에도 해당 에러가 발생하는 경우 에러 메시지와 함께 HIVE 에 문의주세요.
            break;
        case kPromotionServerResponseError:
            //전달받은 메시지와 함께 HIVE에 문의주세요.
            break;
        default:
            break;
    }
}];
Code Message How to solve
(필수 구현) PromotionNetworkError HIVE 서버 통신에 실패하였습니다. 기기의 네트워크 연결 상태를 확인하세요. 기기의 네트워크 연결 상태가 정상임에도 해당 에러가 발생하는 경우 에러 메시지와 함께 HIVE 에 문의주세요.
(필수 구현) PromotionServerResponseError HIVE 서버 통신 응답값이 정상이 아닙니다. 전달받은 메시지와 함께 HIVE에 문의주세요.
PromotionNotInitialized HIVE SDK 초기화가 되어있지 않습니다. AuthV4.setup API를 호출하여 HIVE SDK 초기화를 수행하세요. API 보기

hive.Promotion.getBadgeInfo (onPromotionBadgeInfo listener)

Promotion.getBadgeInfo ((ResultAPI result, List<PromotionBadgeInfo> badgeInfoList) => {
    switch(result.code) {
        case ResultAPI.Code.PromotionNetworkError:
        //기기의 네트워크 연결 상태를 확인하세요. 기기의 네트워크 연결 상태가 정상임에도 해당 에러가 발생하는 경우 에러 메시지와 함께 HIVE 에 문의주세요.
        break;
        case ResultAPI.Code.PromotionServerResponseError:
        //전달받은 메시지와 함께 HIVE에 문의주세요.
        break;
    }
});
Promotion::showOfferwall([](ResultAPI const & result, std::vector<PromotionBadgeInfo> const & badgeInfoList){
    switch(result.code) {
        case ResultAPI::Code::PromotionNetworkError:
        //기기의 네트워크 연결 상태를 확인하세요. 기기의 네트워크 연결 상태가 정상임에도 해당 에러가 발생하는 경우 에러 메시지와 함께 HIVE 에 문의주세요.
        break;
        case ResultAPI::Code::PromotionServerResponseError:
        //전달받은 메시지와 함께 HIVE에 문의주세요.
        break;
    }
});
Promotion.getBadgeInfo(new PromotionBadgeInfoListener() {
    @Override
    public void onReceiveInfo(ResultAPI result, ArrayList<PromotionBadge> badgeInfoList) {
        switch(result.code) {
            case PromotionNetworkError:
                //기기의 네트워크 연결 상태를 확인하세요. 기기의 네트워크 연결 상태가 정상임에도 해당 에러가 발생하는 경우 에러 메시지와 함께 HIVE 에 문의주세요.
                break;
            case PromotionServerResponseError:
                //전달받은 메시지와 함께 HIVE에 문의주세요.
                break;
        }

    }
});
[HIVEPromotion getBadgeInfo:^(HIVEResultAPI *result, NSArray<HIVEPromotionBadge *> *badgeInfos) {
    switch (result.code) {
        case kPromotionNetworkError:
            //기기의 네트워크 연결 상태를 확인하세요. 기기의 네트워크 연결 상태가 정상임에도 해당 에러가 발생하는 경우 에러 메시지와 함께 HIVE 에 문의주세요.
            break;
        case kPromotionServerResponseError:
            //전달받은 메시지와 함께 HIVE에 문의주세요.
            break;
        default:
            break;
    }
}];
Code Message How to solve
(필수 구현) PromotionNetworkError HIVE 서버 통신에 실패하였습니다. 기기의 네트워크 연결 상태를 확인하세요. 기기의 네트워크 연결 상태가 정상임에도 해당 에러가 발생하는 경우 에러 메시지와 함께 HIVE 에 문의주세요.
(필수 구현) PromotionServerResponseError HIVE 서버 통신 응답값이 정상이 아닙니다. 전달받은 메시지와 함께 HIVE에 문의주세요.
PromotionNotInitialized HIVE SDK 초기화가 되어있지 않습니다. AuthV4.setup API를 호출하여 HIVE SDK 초기화를 수행하세요. API 보기

hive.Promotion.getAppInvitationData (onAppInvitationData listener)

Promotion.getAppInvitationData ((ResultAPI result, AppInvitationData appInvitationData) => {
    switch(result.code) {
        case ResultAPI.Code.PromotionNetworkError:
        //기기의 네트워크 연결 상태를 확인하세요. 기기의 네트워크 연결 상태가 정상임에도 해당 에러가 발생하는 경우 에러 메시지와 함께 HIVE 에 문의주세요.
        break;
        case ResultAPI.Code.PromotionInvalidResponseData:
        //전달받은 메시지와 함께 HIVE에 문의주세요.
        break;
        case ResultAPI.Code.PromotionServerResponseError:
        //전달받은 메시지와 함께 HIVE에 문의주세요.
        break;
    }
});
Promotion::getAppInvitationData([](ResultAPI const & result, AppInvitationData const & appInvitationData){
    switch(result.code) {
        case ResultAPI::Code::PromotionNetworkError:
        //기기의 네트워크 연결 상태를 확인하세요. 기기의 네트워크 연결 상태가 정상임에도 해당 에러가 발생하는 경우 에러 메시지와 함께 HIVE 에 문의주세요.
        break;
        case ResultAPI::Code::PromotionInvalidResponseData:
        //전달받은 메시지와 함께 HIVE에 문의주세요.
        break;
        case ResultAPI::Code::PromotionServerResponseError:
        //전달받은 메시지와 함께 HIVE에 문의주세요.
        break;
    }
});
Promotion.getAppInvitationData(new AppInvitationDataListener() {
    @Override
    public void onAppInvitationData(ResultAPI result, AppInvitationData appInvitationData) {
        switch(result.code) {
            case PromotionNetworkError:
                //기기의 네트워크 연결 상태를 확인하세요. 기기의 네트워크 연결 상태가 정상임에도 해당 에러가 발생하는 경우 에러 메시지와 함께 HIVE 에 문의주세요.
                break;
            case PromotionInvalidResponseData:
                //전달받은 메시지와 함께 HIVE에 문의주세요.
                break;
            case PromotionServerResponseError:
                //전달받은 메시지와 함께 HIVE에 문의주세요.
                break;
        }

    }
});
[HIVEPromotion getAppInvitationData:^(HIVEResultAPI *result, HIVEAppInvitationData *invitationData) {
    switch (result.code) {
        case kPromotionNetworkError:
            //기기의 네트워크 연결 상태를 확인하세요. 기기의 네트워크 연결 상태가 정상임에도 해당 에러가 발생하는 경우 에러 메시지와 함께 HIVE 에 문의주세요.
            break;
        case kPromotionInvalidResponseData:
            //전달받은 메시지와 함께 HIVE에 문의주세요.
            break;
        case kPromotionServerResponseError:
            //전달받은 메시지와 함께 HIVE에 문의주세요.
            break;
        default:
            break;
    }
}];
Code Message How to solve
(필수 구현) PromotionNetworkError HIVE 서버 통신에 실패하였습니다. 기기의 네트워크 연결 상태를 확인하세요. 기기의 네트워크 연결 상태가 정상임에도 해당 에러가 발생하는 경우 에러 메시지와 함께 HIVE 에 문의주세요.
(필수 구현) PromotionServerResponseError HIVE 서버 통신 응답값이 정상이 아닙니다. 전달받은 메시지와 함께 HIVE에 문의주세요.
(필수 구현) PromotionInvalidResponseData HIVE 서버 통신 프로토콜 규약에 맞지 않은 데이터가 전달되었습니다. 전달받은 메시지와 함께 HIVE에 문의주세요.
PromotionNotInitialized HIVE SDK 초기화가 되어있지 않습니다. AuthV4.setup API를 호출하여 HIVE SDK 초기화를 수행하세요. API 보기

hive.Promotion.setAdditionalInfo (String additionalInfo)

Code Message How to solve
Result API 없음

hive.Promotion.setEngagementReady (Bool isReady)

Code Message How to solve
Result API 없음

hive.Promotion.setEngagementListener (onEngagementCB)

Code Message How to solve
UserEngagementEmptyMarketPid Scheme의 api 값이 iappurchase인 경우, 전달받은 Scheme에 아이템 정보가 없습니다. (engagementEventType 이 EngagementEventType.END인 경우에만 전달된다.) 전달하는 Scheme의 형태를 확인해주세요. Scheme URL 표기법
UserEngagementEmptyMarketPid Scheme의 api 값이 iappromote인 경우, 전달받은 Scheme에 아이템 정보가 없습니다. (engagementEventType 이 EngagementEventType.END인 경우에만 전달된다.) 전달하는 Scheme의 형태를 확인해주세요. Scheme URL 표기법
UserEngagementEmptyCouponId Scheme의 api 값이 promotioncoupon인 경우, 전달받은 Scheme에 쿠폰 정보가 없습니다. (engagementEventType 이 EngagementEventType.END인 경우에만 전달된다.) 전달하는 Scheme의 형태를 확인해주세요. Scheme URL 표기법
IAPV4.purchase API 응답 값과 동일한 응답 값 전달. Scheme의 api 값이 iappurchase인 경우, 전달받은 Scheme을 처리하던 중 에러가 발생하였습니다. (engagementEventType 이 EngagementEventType.END인 경우에만 전달된다.) IAPV4.purchase ResultAPI 코드를 확인하세요.
Promotion.showOfferwall API 응답 값과 동일한 응답 값 전달. Scheme의 api 값이 offerwallshow인 경우, 전달받은 Scheme을 처리하던 중 에러가 발생하였습니다. (engagementEventType 이 EngagementEventType.END인 경우에만 전달된다.) Promotion.showOfferwall ResultAPI 코드를 확인하세요.
Promotion.showCustomContents API 응답 값과 동일한 응답 값 전달. Scheme의 api 값이 promotionshow인 경우, 전달받은 Scheme을 처리하던 중 에러가 발생하였습니다. (engagementEventType 이 EngagementEventType.END인 경우에만 전달된다.) Promotion.showCustomContents ResultAPI 코드를 확인하세요.
HIVEAuthV4.showCafe API 응답 값과 동일한 응답 값 전달. Scheme의 api 값이 socialcafe인 경우, 전달받은 Scheme을 처리하던 중 에러가 발생하였습니다. (engagementEventType 이 EngagementEventType.END인 경우에만 전달된다.) HIVEAuthV4.showCafe ResultAPI 코드를 확인하세요.
HIVEAuthV4.showInquiry API 응답 값과 동일한 응답 값 전달. Scheme의 api 값이 socialinquiry인 경우, 전달받은 Scheme을 처리하던 중 에러가 발생하였습니다. (engagementEventType 이 EngagementEventType.END인 경우에만 전달된다.) HIVEAuthV4.showInquiry ResultAPI 코드를 확인하세요.

hive.Promotion.showUAShare(String inviteMessage, String inviteLink, onPromotionShare listener)

Promotion.showUAShare ("Invite Message", "https://invite.link", (ResultAPI result) => {
    switch(result.code) {
        ...
    }
});
Promotion::showUAShare("Invite Message", "https://invite.link",  [=](ResultAPI const & result){
    switch(result.code) {
        ...
    }
});
Promotion.showUAShare("Invite Message", "https://invite.link",  new com.hive.Promotion.PromotionShareListener() {
    @Override
    public void onPromotionShare(ResultAPI result) {
        switch(result.code) {
            ...
        }

    }
});
[HIVEPromotion showUAShare:"Invite Message" inviteLink:"https://invite.link" handler:^(HIVEResultAPI *result) {
    switch (result.code) {
        ...
    }
}];
Code Message How to solve
PromotionShareFailed SNS에서 데이터를 정상적으로 처리하지 못하였습니다. 공유된 SNS에서 에러 코드를 전달받은 경우 해당 에러팝업이 노출되며, 각 에러 원인은 SNS에 문의하여야합니다.
PromotionShareFailed 입력받은 메시지와 공유 링크가 유효하지 않습니다. 입력한 메시지와 공유 링크가 유효한지 확인하세요.