Result API code – IAPV4
Bookmark
marketConnect | getProductInfo | purchase | restore | transactionFinish |
---|---|---|---|---|
transactionMultiFinish | checkPromotePurchase | showMarketSelection | getBalanceInfo | showCharge |
hive.IAPV4.marketConnect (onIAPV4MarketInfo listener)¶
IAPV4.marketConnect((ResultAPI result, List<IAPV4.IAPV4Type> iapV4TypeList) => {
switch(result.code) {
case ResultAPI.Code.IAPV4NetworkError:
// 기기의 네트워크 연결 상태를 확인하세요.
// 기기의 네트워크 연결 상태가 정상임에도 해당 에러가 발생하는 경우 에러 메시지와 함께 HIVE 에 문의주세요.
break;
case ResultAPI.Code.IAPV4ResponseError:
// 전달받은 메시지와 함께 HIVE에 문의주세요.
break;
case ResultAPI.Code.IAPV4ServerResponseError:
// 전달받은 메시지와 함께 HIVE에 문의주세요.
break;
case ResultAPI.Code.IAPV4RequestMarketJsonException:
// 전달받은 메시지와 함께 HIVE에 문의주세요.
break;
case ResultAPI.Code.IAPV4AppStoreError:
// 해당 기기에서 AppStore 연동이 가능한 상태인지 확인하세요.
// 해당 문제가 지속되는 경우 전달받은 메시지와 함께 HIVE에 문의주세요.
break;
case ResultAPI.Code.IAPV4FailMarketConnect:
// 해당 기기에서 선택한 Market에 연동이 가능한 상태인지 확인하세요.
// 해당 문제가 지속되는 경우 전달받은 메시지와 함께 HIVE에 문의주세요.
break;
...
}
});
IAPV4::marketConnect([](ResultAPI const & result,std::vector<IAPV4Type> const & marketIDs){
switch(result.code) {
case ResultAPI::Code::IAPV4NetworkError:
// 기기의 네트워크 연결 상태를 확인하세요.
// 기기의 네트워크 연결 상태가 정상임에도 해당 에러가 발생하는 경우 에러 메시지와 함께 HIVE 에 문의주세요.
break;
case ResultAPI::Code::IAPV4ResponseError:
// 전달받은 메시지와 함께 HIVE에 문의주세요.
break;
case ResultAPI::Code::IAPV4ServerResponseError:
// 전달받은 메시지와 함께 HIVE에 문의주세요.
break;
case ResultAPI::Code::IAPV4RequestMarketJsonException:
// 전달받은 메시지와 함께 HIVE에 문의주세요.
break;
case ResultAPI::Code::IAPV4AppStoreError:
// 해당 기기에서 AppStore 연동이 가능한 상태인지 확인하세요.
// 해당 문제가 지속되는 경우 전달받은 메시지와 함께 HIVE에 문의주세요.
break;
case ResultAPI::Code::IAPV4FailMarketConnect:
// 해당 기기에서 선택한 Market에 연동이 가능한 상태인지 확인하세요.
// 해당 문제가 지속되는 경우 전달받은 메시지와 함께 HIVE에 문의주세요.
break;
...
}
});
IAPV4.marketConnect(new IAPV4.IAPV4MarketInfoListener() {
@Override
public void onIAPV4MarketInfo(ResultAPI result, List<IAPV4.IAPV4Type> iapV4TypeList) {
switch(result.code) {
case IAPV4NetworkError:
// 기기의 네트워크 연결 상태를 확인하세요.
// 기기의 네트워크 연결 상태가 정상임에도 해당 에러가 발생하는 경우 에러 메시지와 함께 HIVE 에 문의주세요.
break;
case IAPV4ResponseError:
// 전달받은 메시지와 함께 HIVE에 문의주세요.
break;
case IAPV4ServerResponseError:
// 전달받은 메시지와 함께 HIVE에 문의주세요.
break;
case IAPV4RequestMarketJsonException:
// 전달받은 메시지와 함께 HIVE에 문의주세요.
break;
case IAPV4AppStoreError:
// 해당 기기에서 AppStore 연동이 가능한 상태인지 확인하세요.
// 해당 문제가 지속되는 경우 전달받은 메시지와 함께 HIVE에 문의주세요.
break;
case IAPV4FailMarketConnect:
// 해당 기기에서 선택한 Market에 연동이 가능한 상태인지 확인하세요.
// 해당 문제가 지속되는 경우 전달받은 메시지와 함께 HIVE에 문의주세요.
break;
...
}
}
});
[HIVEIAPV4 marketConnect:^(HIVEResultAPI *result, NSArray<NSNumber *> *marketIDs) {
switch(result.code) {
case kIAPV4NetworkError:
// 기기의 네트워크 연결 상태를 확인하세요.
// 기기의 네트워크 연결 상태가 정상임에도 해당 에러가 발생하는 경우 에러 메시지와 함께 HIVE 에 문의주세요.
break;
case kIAPV4ResponseError:
// 전달받은 메시지와 함께 HIVE에 문의주세요.
break;
case kIAPV4ServerResponseError:
// 전달받은 메시지와 함께 HIVE에 문의주세요.
break;
case kIAPV4RequestMarketJsonException:
// 전달받은 메시지와 함께 HIVE에 문의주세요.
break;
case kIAPV4AppStoreError:
// 해당 기기에서 AppStore 연동이 가능한 상태인지 확인하세요.
// 해당 문제가 지속되는 경우 전달받은 메시지와 함께 HIVE에 문의주세요.
break;
case kIAPV4FailMarketConnect:
// 해당 기기에서 선택한 Market에 연동이 가능한 상태인지 확인하세요.
// 해당 문제가 지속되는 경우 전달받은 메시지와 함께 HIVE에 문의주세요.
break;
//...
}
}];
Code | Message | How to solve |
---|---|---|
(필수 구현) IAPV4NetworkError | HIVE 서버 통신에 실패하였습니다. | 기기의 네트워크 연결 상태를 확인하세요. 기기의 네트워크 연결 상태가 정상임에도 해당 에러가 발생하는 경우 에러 메시지와 함께 HIVE 에 문의주세요. |
(필수 구현) IAPV4ResponseError | HIVE서버 통신 응답값이 정상이 아닙니다. | 전달받은 메시지와 함께 HIVE에 문의주세요. |
(필수 구현) IAPV4ServerResponseError | HIVE 서버 통신 응답값이 정상이 아닙니다. | 전달받은 메시지와 함께 HIVE에 문의주세요. |
(필수 구현) IAPV4RequestMarketJsonException | [Android] /api/call market 서버 통신을 위한 json 데이터 생성 중 에러가 발생하는 경우 | 전달받은 메시지와 함께 HIVE에 문의주세요. |
(필수 구현) IAPV4NetworkError | HIVE 서버 통신에 실패하였습니다. | 기기의 네트워크 연결 상태를 확인하세요. |
(필수 구현) IAPV4ResponseError | HIVE 서버 통신 응답값이 정상이 아닙니다. | 전달받은 메시지와 함께 HIVE에 문의주세요. |
(필수 구현) IAPV4ServerResponseError | 서버 통신 응답값이 정상이 아닙니다. | 전달받은 메시지와 함께 HIVE에 문의주세요. |
(필수 구현) IAPV4RequestMarketJsonException | [Android] /api/call market 서버 통신을 위한 json 데이터 생성 중 에러가 발생하는 경우 | 전달받은 메시지와 함께 HIVE에 문의주세요. |
(필수 구현) IAPV4AppStoreError | [Apple Market] AppStore 연동 시도 중 에러가 발생하였습니다. | 해당 기기에서 AppStore 연동이 가능한 상태인지 확인하세요. AppStore 에러 보기 |
(필수 구현) IAPV4FailMarketConnect | [Google Market] Google Market 연동 시도 중 에러가 발생하였습니다. [Lebi Market] Lebi Market 연동 시도 중 에러가 발생하였습니다. [OneStore Market] OneStore Market 연동 시도 중 에러가 발생하였습니다. | 해당 기기에서 선택한 Market에 연동이 가능한 상태인지 확인하세요. |
IAPV4NotInitialize | HIVE SDK 초기화가 되어있지 않습니다. | AuthV4.setup API를 호출하여 HIVE SDK 초기화를 수행하세요. API 보기 |
IAPV4InProgressMarketConnect | Market Connect가 이미 진행중입니다. | IAPV4.marketConnect API가 이미 수행중인 경우 중복으로 API 호출이 불가능합니다. |
IAPV4EmptyMarketList | 서버 통신 응답 데이터의 마켓 리스트가 비정상입니다. | 등록된 마켓 정보를 확인하세요. |
IAPV4NotSupportedMarket | 현재 버전의 HIVE SDK에서 사용 불가능한 마켓입니다. | 등록된 마켓 정보를 확인하세요. |
IAPV4MarketPidListEmptyInIAPServer | 서버에 등록된 마켓이 없거나 지원하지 않는 마켓입니다. | 등록된 마켓 정보를 확인하세요. |
IAPV4FailToConvertNSSet | [Apple Market] 서버에 등록된 Apple 마켓의 아이템 리스트가 유효하지 않습니다. | 등록된 Apple 마켓의 아이템 정보를 확인하세요. |
IAPV4InProgressConnectAppStore | [Apple Market] 이미 AppStore에 연결을 시도중입니다. | 이미 IAPV4.marketCoonect API를 통해 시도중인 AppStore 연결이 종료될 때 까지 기다려주세요. |
IAPV4AppStoreResponseEmpty | [Apple Market] AppStore에 등록된 아이템 정보가 없거나, AppStore 연동이 정상적으로 진행되지 않았습니다. | AppStore에 상품이 등록되어 있지 않거나, 상품이 비활성화 되어 있는지 확인하세요. 순간적인 인터넷 단절 등의 상황으로 통신이 이루어지지 못하였는지 확인하세요. |
IAPV4PlayStoreQueryInventoryFail | [Google Market] Google Market 연동이 정상적으로 진행되지 않았거나 상품 정보 조회가 정상적으로 진행되지 않았습니다. | 해당 기기에서 Google Market 연동이 가능한 상태인지 확인하세요. 해당 문제가 지속되는 경우 전달받은 메시지와 함께 Hive에 문의하세요. 4.16.0, 1.20.0 부터 추가되었습니다. |
hive.IAPV4.getProductInfo (onIAPV4ProductInfo listener)¶
IAPV4.getProductInfo((ResultAPI result, List<IAPV4.IAPV4Product> iapV4ProductList, int balance) => {
switch(result.code) {
case ResultAPI.Code.IAPV4ProductInfoJsonException:
// 전달받은 메시지와 함께 HIVE에 문의주세요.
break;
case ResultAPI.Code.IAPV4RequestProductJsonException:
// 전달받은 메시지와 함께 HIVE에 문의주세요.
break;
case ResultAPI.Code.IAPV4ResponseError:
// 전달받은 메시지와 함께 HIVE에 문의주세요.
break;
/***** 구매 진행할 마켓 선택이 필요한 경우 *****/
case ResultAPI.Code.IAPV4EmptyMarketURL:
// 구매 진행할 Market 선택 리스트가 없습니다.
break;
case ResultAPI.Code.IAPV4CancelMarketSelect:
// 구매 진행할 Market 선택을 취소하거나, 선택 처리중 에러가 발생하였습니다.
// Market 선택이 진행되지 않으면 구매가 진행 될 수 없으므로 해당 API를 재시도하세요.
// 해당 에러가 지속되는 경우 전달받은 메시지와 함께 HIVE에 문의주세요.
break;
case ResultAPI.Code.IAPV4NetworkError:
// 기기의 네트워크 연결 상태를 확인하세요.
// 기기의 네트워크 연결 상태가 정상임에도 해당 에러가 발생하는 경우 에러 메시지와 함께 HIVE 에 문의주세요.
break;
case ResultAPI.Code.IAPV4ServerResponseError:
// 전달받은 메시지와 함께 HIVE에 문의주세요.
break;
...
}
});
IAPV4::getProductInfo([](ResultAPI const & result,std::vector<IAPV4Product> const & productInfoList,unsigned int balance){
switch(result.code) {
case ResultAPI::Code::IAPV4ProductInfoJsonException:
// 전달받은 메시지와 함께 HIVE에 문의주세요.
break;
case ResultAPI::Code::IAPV4RequestProductJsonException:
// 전달받은 메시지와 함께 HIVE에 문의주세요.
break;
case ResultAPI::Code::IAPV4ResponseError:
// 전달받은 메시지와 함께 HIVE에 문의주세요.
break;
/***** 구매 진행할 마켓 선택이 필요한 경우 *****/
case ResultAPI::Code::IAPV4EmptyMarketURL:
// 구매 진행할 Market 선택 리스트가 없습니다.
break;
case ResultAPI::Code::IAPV4CancelMarketSelect:
// 구매 진행할 Market 선택을 취소하거나, 선택 처리중 에러가 발생하였습니다.
// Market 선택이 진행되지 않으면 구매가 진행 될 수 없으므로 해당 API를 재시도하세요.
// 해당 에러가 지속되는 경우 전달받은 메시지와 함께 HIVE에 문의주세요.
break;
case ResultAPI::Code::IAPV4NetworkError:
// 기기의 네트워크 연결 상태를 확인하세요.
// 기기의 네트워크 연결 상태가 정상임에도 해당 에러가 발생하는 경우 에러 메시지와 함께 HIVE 에 문의주세요.
break;
case ResultAPI::Code::IAPV4ServerResponseError:
// 전달받은 메시지와 함께 HIVE에 문의주세요.
break;
...
}
});
IAPV4.getProductInfo(new IAPV4.IAPV4ProductInfoListener() {
@Override
public void onIAPV4ProductInfo(ResultAPI result, final List<IAPV4.IAPV4Product> iapV4ProductList, final int balance) {
switch(result.code) {
case IAPV4ProductInfoJsonException:
// 전달받은 메시지와 함께 HIVE에 문의주세요.
break;
case IAPV4RequestProductJsonException:
// 전달받은 메시지와 함께 HIVE에 문의주세요.
break;
case IAPV4ResponseError:
// 전달받은 메시지와 함께 HIVE에 문의주세요.
break;
/***** 구매 진행할 마켓 선택이 필요한 경우 *****/
case IAPV4EmptyMarketURL:
// 구매 진행할 Market 선택 리스트가 없습니다.
break;
case IAPV4CancelMarketSelect:
// 구매 진행할 Market 선택을 취소하거나, 선택 처리중 에러가 발생하였습니다.
// Market 선택이 진행되지 않으면 구매가 진행 될 수 없으므로 해당 API를 재시도하세요.
// 해당 에러가 지속되는 경우 전달받은 메시지와 함께 HIVE에 문의주세요.
break;
case IAPV4NetworkError:
// 기기의 네트워크 연결 상태를 확인하세요.
// 기기의 네트워크 연결 상태가 정상임에도 해당 에러가 발생하는 경우 에러 메시지와 함께 HIVE 에 문의주세요.
break;
case IAPV4ServerResponseError:
// 전달받은 메시지와 함께 HIVE에 문의주세요.
break;
...
}
}
});
[HIVEIAPV4 getProductInfo:^(HIVEResultAPI *result, NSArray<HIVEIAPV4Product *> *productInfoList, NSUInteger balance) {
switch (result.code) {
case kIAPV4ProductInfoJsonException:
// 전달받은 메시지와 함께 HIVE에 문의주세요.
break;
case kIAPV4RequestProductJsonException:
// 전달받은 메시지와 함께 HIVE에 문의주세요.
break;
case kIAPV4ResponseError:
// 전달받은 메시지와 함께 HIVE에 문의주세요.
break;
/***** 구매 진행할 마켓 선택이 필요한 경우 *****/
case kIAPV4EmptyMarketURL:
// 구매 진행할 Market 선택 리스트가 없습니다.
break;
case kIAPV4CancelMarketSelect:
// 구매 진행할 Market 선택을 취소하거나, 선택 처리중 에러가 발생하였습니다.
// Market 선택이 진행되지 않으면 구매가 진행 될 수 없으므로 해당 API를 재시도하세요.
// 해당 에러가 지속되는 경우 전달받은 메시지와 함께 HIVE에 문의주세요.
break;
case kIAPV4NetworkError:
// 기기의 네트워크 연결 상태를 확인하세요.
// 기기의 네트워크 연결 상태가 정상임에도 해당 에러가 발생하는 경우 에러 메시지와 함께 HIVE 에 문의주세요.
break;
case kIAPV4ServerResponseError:
// 전달받은 메시지와 함께 HIVE에 문의주세요.
break;
//...
}
}];
Code | Message | How to solve |
---|---|---|
(필수 구현) IAPV4ProductInfoJsonException | HIVE 서버 통신에 필요한 정보가 누락되었습니다. | 전달받은 메시지와 함께 HIVE에 문의주세요. |
(필수 구현) IAPV4RequestProductJsonException | HIVE 서버 통신에 필요한 정보가 누락되었습니다. | 전달받은 메시지와 함께 HIVE에 문의주세요. |
(필수 구현) IAPV4ResponseError | HIVE 서버 통신 응답값이 정상이 아닙니다. | 전달받은 메시지와 함께 HIVE에 문의주세요. |
(필수 구현) IAPV4ResponseError | HIVE 서버 통신 응답값이 정상이 아닙니다. | 전달받은 메시지와 함께 HIVE에 문의주세요. |
(필수 구현) IAPV4EmptyMarketURL | 선택 할 수 있는 Market이 없습니다. | 구매 진행할 Market 선택 리스트가 없습니다. |
(필수 구현) IAPV4CancelMarketSelect | 구매 진행할 Market 선택에 에러가 발생하였습니다. | 구매 진행할 Market 선택을 취소하거나, 선택 처리중 에러가 발생하였습니다. Market 선택이 진행되지 않으면 구매가 진행 될 수 없으므로 해당 API를 재시도하세요. 해당 에러가 지속되는 경우 전달받은 메시지와 함께 HIVE에 문의주세요. |
(필수 구현) IAPV4NetworkError | 서버 통신에 실패하였습니다. | 기기의 네트워크 연결 상태를 확인하세요. 기기의 네트워크 연결 상태가 정상임에도 해당 에러가 발생하는 경우 에러 메시지와 함께 HIVE 에 문의주세요. |
(필수 구현) IAPV4ServerResponseError | 서버 통신 응답값이 정상이 아닙니다. | 전달받은 메시지와 함께 HIVE에 문의주세요. |
IAPV4NotInitialize | HIVE SDK 초기화가 되어있지 않습니다. | AuthV4.setup API를 호출하여 HIVE SDK 초기화를 수행하세요. API 보기 |
IAPV4NeedMarketConnect | 마켓 연동이 되어있지 않습니다. | IAPV4.MarketConnect API를 호출하여 IAPV4 Market 연동를 수행하세요. |
IAPV4NeedSignIn | 로그인이 되어있지 않습니다. | AuthV4.helper.signIn API를 호출하여 로그인을 수행하세요. API 보기 |
IAPV4EmptyProductList | 구매 가능한 아이템이 존재하지 않습니다. | 구매할 아이템 정보를 등록하세요. |
IAPV4InProgressMarketSelect | 구매 진행할 Market 선택이 이미 진행중입니다. | 구매 진행할 Market 선택 이후 다시 수행하세요. |
IAPV4NeedSignIn | [Lebi Market] 로그인이 되어있지 않아 Lebi Market 이용이 불가능합니다. | AuthV4.helper.connect API를 providerType 을 HIVE로 설정하여 HIVE 연동을 수행하도록 안내하세요. API 보기 |
IAPV4NeedSignIn | 로그인이 되어있지 않습니다. | AuthV4.helper.signIn API를 호출하여 로그인을 수행하세요. API 보기 |
IAPV4EmptyProductList | 구매 가능한 아이템이 존재하지 않습니다. | 구매할 아이템 정보를 등록하세요. |
IAPV4InProgressMarketSelect | 구매 진행할 Market 선택이 이미 진행중입니다. | 구매 진행할 Market 선택 이후 다시 수행하세요. |
IAPV4NeedSignIn | [Lebi Market] 로그인이 되어있지 않아 Lebi Market 이용이 불가능합니다. | AuthV4.helper.connect API를 providerType 을 HIVE로 설정하여 HIVE 연동을 수행하도록 안내하세요. API 보기 |
IAPV4NotSupportedMarket | 현재 기기의 OS에서 지원할 수 없는 Market을 선택하였습니다. | Market 선택 팝업에서 지원할 수 없는 Market이 노출되지 않도록 하세요. |
IAPV4PlayStoreQueryInventoryFail | [Google Market] Google Market 연동이 정상적으로 진행되지 않았거나 상품 정보 조회가 정상적으로 진행되지 않았습니다. | 해당 기기에서 Google Market 연동이 가능한 상태인지 확인하세요. 해당 문제가 지속되는 경우 전달받은 메시지와 함께 Hive에 문의하세요. 4.16.0, 1.20.0 부터 추가되었습니다. |
hive.IAPV4.purchase (String marketPid, String additionalInfo, onIAPV4Purchase listener)¶
IAPV4.purchase ("com.gcp.product1", "{\"characterName\":\"GCP\"}", (ResultAPI result, IAPV4.IAPV4Receipt iapV4Receipt) => {
switch(result.code) {
case ResultAPI.Code.IAPV4RestrictPayments:
// 기기내 구매 차단 여부를 확인하세요.
break;
case ResultAPI.Code.IAPV4NeedRestore:
// IAPV4.restore API를 통해 구매복구를 진행하세요.
break;
case ResultAPI.Code.IAPV4PurchaseParamJsonException:
// 전달받은 메시지와 함께 HIVE에 문의주세요.
break;
case ResultAPI.Code.IAPV4CancelPayment:
// 구매를 취소하였음을 알려주세요.
break;
/**** Apple 상점 이용 *****/
case ResultAPI.Code.IAPV4AppStoreError:
// 구매를 취소하였음을 알려주세요.
break;
/***** Google 상점 이용 *****/
case ResultAPI.Code.IAPV4FailPayment:
// 문제 발생에 대한 안내 후 다시 구매를 시도하도록 안내하세요.
//해당 문제가 지속되는 경우 전달받은 메세지와 함께 HIVE에 문의주세요.
break;
case ResultAPI.Code.IAPPlayStoreLaunchPurchaseFlowException:
// 문제 발생에 대한 안내 후 다시 구매를 시도하도록 안내하세요.
//해당 문제가 지속되는 경우 전달받은 메세지와 함께 HIVE에 문의주세요.
break;
/***** Lebi 상점 이용 *****/
case ResultAPI.Code.IAPV4LebiCancel:
// 유저가 Lebi 잔액 충전을 취소하였습니다. 잔액이 부족하여 구매를 진행 할 수 없음을 안내하세요.
break;
case ResultAPI.Code.IAPV4LebiPurchaseNetworkError:
// 문제 발생에 대한 안내 후 다시 구매를 시도하도록 안내하세요.
//해당 문제가 지속되는 경우 전달받은 메세지와 함께 HIVE에 문의주세요.
break;
case ResultAPI.Code.IAPV4LebiPurchaseJsonException:
// 문제 발생에 대한 안내 후 다시 구매를 시도하도록 안내하세요.
//해당 문제가 지속되는 경우 전달받은 메세지와 함께 HIVE에 문의주세요.
break;
case ResultAPI.Code.IAPV4LebiInternalRequestException:
// 문제 발생에 대한 안내 후 다시 구매를 시도하도록 안내하세요.
//해당 문제가 지속되는 경우 전달받은 메세지와 함께 HIVE에 문의주세요.
break;
case ResultAPI.Code.CommonUnknown:
// 문제 발생에 대한 안내 후 다시 구매를 시도하도록 안내하세요.
//해당 문제가 지속되는 경우 전달받은 메세지와 함께 HIVE에 문의주세요.
break;
case ResultAPI.Code.IAPV4PlayStorePending:
// 오프라인 구매 등의 이유로 구매가 대기 중인 거래 처리되었습니다.
//이후 UE의 IAP_UPDATED 신호에서 Restore 시 구매 완료된 영수증을 받을 수 있습니다.
break;
...
}
});
string marketPid = "com.gcp.product1";
string additionalInfo = "{\"characterName\":\"GCP\"}";
IAPV4::purchase(pidList[index], getEditboxValue(EDITBOX_ADDITIONAL_INFO), [](ResultAPI const & result,IAPV4Receipt const & receipt){
switch(result.code) {
case ResultAPI::Code::IAPV4RestrictPayments:
// 기기내 구매 차단 여부를 확인하세요.
break;
case ResultAPI::Code::IAPV4NeedRestore:
// IAPV4.restore API를 통해 구매복구를 진행하세요.
break;
case ResultAPI::Code::IAPV4PurchaseParamJsonException:
// 전달받은 메시지와 함께 HIVE에 문의주세요.
break;
case ResultAPI::Code::IAPV4CancelPayment:
// 구매를 취소하였음을 알려주세요.
break;
/ Apple 상점 이용 *****/
case ResultAPI::Code::IAPV4AppStoreError:
// 구매를 취소하였음을 알려주세요.
break;
/***** Google 상점 이용 *****/
case ResultAPI::Code::IAPV4FailPayment:
// 문제 발생에 대한 안내 후 다시 구매를 시도하도록 안내하세요.
//해당 문제가 지속되는 경우 전달받은 메세지와 함께 HIVE에 문의주세요.
break;
case ResultAPI::Code::IAPPlayStoreLaunchPurchaseFlowException:
// 문제 발생에 대한 안내 후 다시 구매를 시도하도록 안내하세요.
//해당 문제가 지속되는 경우 전달받은 메세지와 함께 HIVE에 문의주세요.
break;
/***** Lebi 상점 이용 *****/
case ResultAPI::Code::IAPV4LebiCancel:
// 유저가 Lebi 잔액 충전을 취소하였습니다. 잔액이 부족하여 구매를 진행 할 수 없음을 안내하세요.
break;
case ResultAPI::Code::IAPV4LebiPurchaseNetworkError:
// 문제 발생에 대한 안내 후 다시 구매를 시도하도록 안내하세요.
//해당 문제가 지속되는 경우 전달받은 메세지와 함께 HIVE에 문의주세요.
break;
case ResultAPI::Code::IAPV4LebiPurchaseJsonException:
// 문제 발생에 대한 안내 후 다시 구매를 시도하도록 안내하세요.
//해당 문제가 지속되는 경우 전달받은 메세지와 함께 HIVE에 문의주세요.
break;
case ResultAPI::Code::IAPV4LebiInternalRequestException:
// 문제 발생에 대한 안내 후 다시 구매를 시도하도록 안내하세요.
//해당 문제가 지속되는 경우 전달받은 메세지와 함께 HIVE에 문의주세요.
break;
case ResultAPI::Code::CommonUnknown:
// 문제 발생에 대한 안내 후 다시 구매를 시도하도록 안내하세요.
//해당 문제가 지속되는 경우 전달받은 메세지와 함께 HIVE에 문의주세요.
break;
case ResultAPI::Code::IAPV4PlayStorePending:
// 오프라인 구매 등의 이유로 구매가 대기 중인 거래 처리되었습니다.
//이후 UE의 IAP_UPDATED 신호에서 Restore 시 구매 완료된 영수증을 받을 수 있습니다.
break;
...
}
});
IAPV4.purchase("com.gcp.product1", "{\"characterName\":\"GCP\"}", new IAPV4.IAPV4PurchaseListener() {
@Override
public void onIAPV4Purchase(ResultAPI result, final IAPV4.IAPV4Receipt iapV4Receipt) {
switch(result.code) {
case IAPV4RestrictPayments:
// 기기내 구매 차단 여부를 확인하세요.
break;
case IAPV4NeedRestore:
// IAPV4.restore API를 통해 구매복구를 진행하세요.
break;
case IAPV4PurchaseParamJsonException:
// 전달받은 메시지와 함께 HIVE에 문의주세요.
break;
case IAPV4CancelPayment:
// 구매를 취소하였음을 알려주세요.
break;
/ Apple 상점 이용 *****/
case IAPV4AppStoreError:
// 구매를 취소하였음을 알려주세요.
break;
/***** Google 상점 이용 *****/
case IAPV4FailPayment:
// 문제 발생에 대한 안내 후 다시 구매를 시도하도록 안내하세요.
//해당 문제가 지속되는 경우 전달받은 메세지와 함께 HIVE에 문의주세요.
break;
case IAPPlayStoreLaunchPurchaseFlowException:
// 문제 발생에 대한 안내 후 다시 구매를 시도하도록 안내하세요.
//해당 문제가 지속되는 경우 전달받은 메세지와 함께 HIVE에 문의주세요.
break;
/***** Lebi 상점 이용 *****/
case IAPV4LebiCancel:
// 유저가 Lebi 잔액 충전을 취소하였습니다. 잔액이 부족하여 구매를 진행 할 수 없음을 안내하세요.
break;
case IAPV4LebiPurchaseNetworkError:
// 문제 발생에 대한 안내 후 다시 구매를 시도하도록 안내하세요.
//해당 문제가 지속되는 경우 전달받은 메세지와 함께 HIVE에 문의주세요.
break;
case IAPV4LebiPurchaseJsonException:
// 문제 발생에 대한 안내 후 다시 구매를 시도하도록 안내하세요.
//해당 문제가 지속되는 경우 전달받은 메세지와 함께 HIVE에 문의주세요.
break;
case IAPV4LebiInternalRequestException:
// 문제 발생에 대한 안내 후 다시 구매를 시도하도록 안내하세요.
//해당 문제가 지속되는 경우 전달받은 메세지와 함께 HIVE에 문의주세요.
break;
case CommonUnknown:
// 문제 발생에 대한 안내 후 다시 구매를 시도하도록 안내하세요.
//해당 문제가 지속되는 경우 전달받은 메세지와 함께 HIVE에 문의주세요.
break;
case IAPV4PlayStorePending:
// 오프라인 구매 등의 이유로 구매가 대기 중인 거래 처리되었습니다.
//이후 UE의 IAP_UPDATED 신호에서 Restore 시 구매 완료된 영수증을 받을 수 있습니다.
break;
...
}
}
});
[HIVEIAPV4 purchase:@"com.gcp.product1" additionalInfo:@"{\"characterName\":\"GCP\"}" handler:^(HIVEResultAPI *result, HIVEIAPV4Receipt *receipt) {
switch (result.code) {
case kIAPV4RestrictPayments:
// 기기내 구매 차단 여부를 확인하세요.
break;
case kIAPV4NeedRestore:
// IAPV4.restore API를 통해 구매복구를 진행하세요.
break;
case kIAPV4PurchaseParamJsonException:
// 전달받은 메시지와 함께 HIVE에 문의주세요.
break;
case kIAPV4CancelPayment:
// 구매를 취소하였음을 알려주세요.
break;
/**** Apple 상점 이용 *****/
case kIAPV4AppStoreError:
// 구매를 취소하였음을 알려주세요.
break;
/***** Google 상점 이용 *****/
case kIAPV4FailPayment:
// 문제 발생에 대한 안내 후 다시 구매를 시도하도록 안내하세요.
//해당 문제가 지속되는 경우 전달받은 메세지와 함께 HIVE에 문의주세요.
break;
case kIAPPlayStoreLaunchPurchaseFlowException:
// 문제 발생에 대한 안내 후 다시 구매를 시도하도록 안내하세요.
//해당 문제가 지속되는 경우 전달받은 메세지와 함께 HIVE에 문의주세요.
break;
/***** Lebi 상점 이용 *****/
case kIAPV4LebiCancel:
// 유저가 Lebi 잔액 충전을 취소하였습니다. 잔액이 부족하여 구매를 진행 할 수 없음을 안내하세요.
break;
case kIAPV4LebiPurchaseNetworkError:
// 문제 발생에 대한 안내 후 다시 구매를 시도하도록 안내하세요.
//해당 문제가 지속되는 경우 전달받은 메세지와 함께 HIVE에 문의주세요.
break;
case kIAPV4LebiPurchaseJsonException:
// 문제 발생에 대한 안내 후 다시 구매를 시도하도록 안내하세요.
//해당 문제가 지속되는 경우 전달받은 메세지와 함께 HIVE에 문의주세요.
break;
case kIAPV4LebiInternalRequestException:
// 문제 발생에 대한 안내 후 다시 구매를 시도하도록 안내하세요.
//해당 문제가 지속되는 경우 전달받은 메세지와 함께 HIVE에 문의주세요.
break;
case kCommonUnknown:
// 문제 발생에 대한 안내 후 다시 구매를 시도하도록 안내하세요.
//해당 문제가 지속되는 경우 전달받은 메세지와 함께 HIVE에 문의주세요.
break;
//...
}
}];
Code | Message | How to solve |
---|---|---|
(필수 구현) IAPV4RestrictPayments | Apple App Store 구매 권한이 없습니다. | 기기내 구매 차단 여부를 확인하세요. |
(필수 구현) IAPV4NeedRestore | 해당 아이템이 restore 상태인 경우restore할 아이템이 존재하는 경우 | IAPV4.restore API를 통해 구매복구를 진행하세요. |
(필수 구현) IAPV4PurchaseParamJsonException | HIVE 서버 통신에 필요한 정보가 누락되었습니다. | 전달받은 메시지와 함께 HIVE에 문의주세요. |
(필수 구현) IAPV4CancelPayment | 유저가 아이템 구매를 취소하였습니다. [Google Market] 유저가 아이템 구매를 취소하였습니다. | 구매를 취소하였음을 알려주세요. |
(필수 구현) IAPV4AppStoreError | 유저가 아이템 구매를 취소하였습니다. [Google Market] 유저가 아이템 구매를 취소하였습니다. | 구매를 취소하였음을 알려주세요. |
(필수 구현) IAPV4AppStoreError | [Apple Market] AppStore Market에 구매 처리 중 문제가 발생하였습니다. | 문제 발생에 대한 안내 후 다시 구매를 시도하도록 안내하세요. 해당 문제가 지속되는 경우 전달받은 메세지와 함께 HIVE에 문의주세요. |
(필수 구현) IAPV4FailPayment | [Google Market] Google Market에 구매 처리 중 문제가 발생하였습니다. | 문제 발생에 대한 안내 후 다시 구매를 시도하도록 안내하세요. 해당 문제가 지속되는 경우 전달받은 메세지와 함께 HIVE에 문의주세요. |
(필수 구현) IAPPlayStoreLaunchPurchaseFlowException | [Google Market] Google Market에서 전달받은 구매 완료 정보 처리 중 문제가 발생하였습니다. | 문제 발생에 대한 안내 후 다시 구매를 시도하도록 안내하세요. 해당 문제가 지속되는 경우 전달받은 메세지와 함께 HIVE에 문의주세요. |
(필수 구현) IAPV4LebiCancel | [Lebi Market] Lebi 잔액 충전을 취소하였습니다. 잔액이 부족하여 구매가 취소됩니다. | 유저가 Lebi 잔액 충전을 취소하였습니다. 잔액이 부족하여 구매를 진행 할 수 없음을 안내하세요. |
(필수 구현) IAPV4LebiPurchaseNetworkError | [Lebi Market] Lebi Market에 구매 처리 중 문제가 발생하였습니다. | 문제 발생에 대한 안내 후 다시 구매를 시도하도록 안내하세요. 해당 문제가 지속되는 경우 전달받은 메세지와 함께 HIVE에 문의주세요. |
(필수 구현) IAPV4LebiPurchaseJsonException | [Lebi Market] Lebi Market에서 전달받은 구매 완료 정보 처리 중 문제가 발생하였습니다. | 문제 발생에 대한 안내 후 다시 구매를 시도하도록 안내하세요. 해당 문제가 지속되는 경우 전달받은 메세지와 함께 HIVE에 문의주세요. |
(필수 구현) IAPV4LebiInternalRequestException | [Lebi Market] Lebi Market에서 전달받은 구매 완료 정보 처리 중 문제가 발생하였습니다. | 문제 발생에 대한 안내 후 다시 구매를 시도하도록 안내하세요. 해당 문제가 지속되는 경우 전달받은 메세지와 함께 HIVE에 문의주세요. |
(필수 구현) IAPV4LebiInternalRequestException | [Lebi Market] Lebi Market에서 전달받은 구매 완료 정보 처리 중 문제가 발생하였습니다. | 문제 발생에 대한 안내 후 다시 구매를 시도하도록 안내하세요. 해당 문제가 지속되는 경우 전달받은 메세지와 함께 HIVE에 문의주세요. |
(필수 구현) CommonUnknown | [Lebi Market] Lebi Market에서 전달받은 구매 완료 정보 처리 중 문제가 발생하였습니다. | 문제 발생에 대한 안내 후 다시 구매를 시도하도록 안내하세요. 해당 문제가 지속되는 경우 전달받은 메세지와 함께 HIVE에 문의주세요. |
IAPV4NotInitialize | HIVE SDK 초기화가 되어있지 않습니다. | AuthV4.setup API를 호출하여 HIVE SDK 초기화를 수행하세요. API 보기 |
IAPV4NotInitialize | HIVE SDK 초기화가 되어있지 않습니다. | AuthV4.setup API를 호출하여 HIVE SDK 초기화를 수행하세요. API 보기 |
IAPV4NeedMarketConnect | 마켓 연동이 되어있지 않습니다. | IAPV4.MarketConnect API를 호출하여 IAPV4 Market 연동를 수행하세요. |
IAPV4NeedSignIn | 로그인이 되어있지 않습니다. | AuthV4.helper.signIn API를 호출하여 로그인을 수행하세요. API 보기 |
IAPV4EmptyParamMarketPID | API 호출시 전달한 marketPid값이 유효하지 않습니다. | 구매 가능한 marketPid값을 입력해주세요. |
IAPV4EmptyProductList | HIVE에 등록된 구매 가능한 아이템이 존재하지 않습니다. | HIVE에 구매할 아이템 정보를 등록하세요. |
IAPV4ProductNotExistInIAPServer | 구매하려는 아이템이 HIVE 에 등록된 아이템이 아닙니다. | HIVE에 구매할 아이템 정보를 등록하세요. |
IAPV4ProductNotExist | 구매하려는 아이템이 해당하는 Market에 등록된 아이템이 아닙니다. | 해당하는 Market에 아이템 정보를 등록하세요. |
IAPV4ProductNotExsitInAppStore | 구매하려는 아이템이 AppStore Market 에 등록된 아이템이 아닙니다. | AppStore Market에 아이템 정보를 등록하세요. |
IAPV4InProgressPurchasing | 구매가 이미 진행중 입니다. | IAPV4.purchase API를 통해 구매가 이미 진행 중 입니다. |
IAPV4InProgressRestoring | 구매복구가 이미 진행 중 입니다. | IAPV4.restore API를 통해 구매복구가 이미 진행 중 입니다. |
IAPV4FailCreateSKPayment | 구매 요청 정보 처리 중 에러가 발생하였습니다. | 구매 정보 처리 중 에러가 발생하였습니다. 전달받은 메세지와 함께 HIVE에 문의주세요. |
IAPV4NeedsHiveSyncing | [Lebi Market] HIVE 로그인이 되어있지 않아 Lebi Market 이용이 불가능합니다. | AuthV4.helper.connect API를 providerType 을 HIVE로 설정하여 HIVE 연동을 수행하도록 안내하세요. API 보기 |
hive.IAPV4.restore (onIAPV4Restore listener)¶
IAPV4.restore ((ResultAPI result, List<IAPV4.IAPV4Receipt> iapV4ReceiptList) => {
switch(result.code) {
case ResultAPI.Code.IAPV4RestrictPayments:
// 기기내 구매 차단 여부를 확인하세요.
break;
case ResultAPI.Code.IAPV4FailToRestore:
// 문제 발생에 대한 안내 후 다시 구매 복구를 시도하도록 안내하세요.
// 해당 문제가 지속되는 경우 전달받은 메세지와 함께 HIVE에 문의주세요.
break;
...
}
});
IAPV4::restore([](ResultAPI const & result,std::vector<std::reference_wrapper<IAPV4Receipt>> receiptList) {
switch(result.code) {
case ResultAPI::Code::IAPV4RestrictPayments:
// 기기내 구매 차단 여부를 확인하세요.
break;
case ResultAPI::Code::IAPV4FailToRestore:
// 문제 발생에 대한 안내 후 다시 구매 복구를 시도하도록 안내하세요.
// 해당 문제가 지속되는 경우 전달받은 메세지와 함께 HIVE에 문의주세요.
break;
...
}
});
IAPV4.restore(new IAPV4.IAPV4RestoreListener() {
@Override
public void onIAPV4Restore(ResultAPI result, List<IAPV4.IAPV4Receipt> iapv4ReceiptList) {
switch(result.code) {
case IAPV4RestrictPayments:
// 기기내 구매 차단 여부를 확인하세요.
break;
case IAPV4FailToRestore:
// 문제 발생에 대한 안내 후 다시 구매 복구를 시도하도록 안내하세요.
// 해당 문제가 지속되는 경우 전달받은 메세지와 함께 HIVE에 문의주세요.
break;
...
}
}
});
[HIVEIAPV4 restore:^(HIVEResultAPI *result, NSArray<HIVEIAPV4Receipt *> *receiptList) {
switch (result.code) {
case kIAPV4RestrictPayments:
// 기기내 구매 차단 여부를 확인하세요.
break;
case kIAPV4FailToRestore:
// 문제 발생에 대한 안내 후 다시 구매 복구를 시도하도록 안내하세요.
// 해당 문제가 지속되는 경우 전달받은 메세지와 함께 HIVE에 문의주세요.
break;
//...
}
}];
Code | Message | How to solve |
---|---|---|
(필수 구현) IAPV4RestrictPayments | Apple App Store 구매 권한이 없습니다. | 기기내 구매 차단 여부를 확인하세요. |
(필수 구현) Google : IAPV4FailToRestore | [Google Market] Google Market에서 구매 복구 처리 중 문제가 발생하였습니다. | 문제 발생에 대한 안내 후 다시 구매 복구를 시도하도록 안내하세요. 해당 문제가 지속되는 경우 전달받은 메세지와 함께 HIVE에 문의주세요. |
IAPV4NotInitialize | HIVE SDK 초기화가 되어있지 않습니다. | AuthV4.setup API를 호출하여 HIVE SDK 초기화를 수행하세요. API 보기 |
IAPV4NeedMarketConnect | 마켓 연동이 되어있지 않습니다. | IAPV4.MarketConnect API를 호출하여 IAPV4 Market 연동를 수행하세요. |
IAPV4NeedSignIn | 로그인이 되어있지 않습니다. | AuthV4.helper.signIn API를 호출하여 로그인을 수행하세요. API 보기 |
IAPV4NotSupportedMarket | 현재 기기의 OS에서 지원할 수 없는 Market을 선택하였습니다. | Market 선택 팝업에서 지원할 수 없는 Market이 노출되지 않도록 하세요. |
IAPV4EmptyProductList | HIVE에 등록된 구매 가능한 아이템이 존재하지 않습니다. | HIVE에 구매할 아이템 정보를 등록하세요. |
IAPV4InProgressPurchasing | 구매가 이미 진행중 입니다. | IAPV4.purchase API를 통해 구매가 이미 진행 중 입니다. |
IAPV4InProgressRestoring | 구매복구가 이미 진행 중 입니다. | IAPV4.restore API를 통해 구매복구가 이미 진행 중 입니다. |
IAPV4InProgressCheckPromote | Promote 인앱 구매 정보 호출 기능을 사용중입니다. | IAPV4.checkPromotePurchase API를 통해 Promote 구매 정보 요청이 이미 진행 중 입니다. |
IAPV4NothingToRestore | 구매 복구 처리가 필요한 아이템이 존재하지 않습니다. | 구매 복구 처리가 필요한 아이템이 존재하지 않습니다. |
hive.IAPV4.transactionFinish (String marketPid, onIAPV4TransacionFinish listener)¶
hive.IAPV4.transactionMultiFinish (List< String > marketPidList, onIAPV4TransacionMultiFinish listener)¶
List<String> marketPidList = new List<String>();
marketPidList.Add(iapV4Receipt.product.marketPid);
IAPV4.transactionMultiFinish (marketPidList, (List<ResultAPI> resultList, List<String> marketPidList) => {
foreach(ResultAPI result in resultList) {
switch(result.code) {
case ResultAPI.Code.IAPV4RestrictPayments:
// 기기내 구매 차단 여부를 확인하세요.
break;
case ResultAPI.Code.IAPV4PlayStoreFinishFail:
// 구매 완료 처리할 아이템이 비정상적인 경로로 구매 된 아이템인지 확인하세요.
// 정상적인 경로로 구매 된 아이템 종료 처리시 지속적으로 해당 에러가 발생하는 경우 HIVE에 문의하세요.
break;
...
}
}
});
IAPV4::transactionMultiFinish(multiPid, [](std::vector<ResultAPI> const & resultList,std::vector<std::string> const & marketPidList){
for(int i=0;i<resultList.size();++i){
ResultAPI result = resultList[i];
switch(result.code) {
case ResultAPI::Code::IAPV4RestrictPayments:
// 기기내 구매 차단 여부를 확인하세요.
break;
case ResultAPI::Code::IAPV4PlayStoreFinishFail:
// 구매 완료 처리할 아이템이 비정상적인 경로로 구매 된 아이템인지 확인하세요.
// 정상적인 경로로 구매 된 아이템 종료 처리시 지속적으로 해당 에러가 발생하는 경우 HIVE에 문의하세요.
break;
...
}
}
});
ArrayList<String> marketPidList = new ArrayList<String>();
marketPidList.add(iapV4Receipt.product.marketPid);
IAPV4.transactionMultiFinish(marketPidList, new IAPV4.IAPV4TransactionMultiFinishListener() {
@Override
public void onIAPV4TransacionMultiFinish(List<ResultAPI> resultList, List<String> marketPidList) {
for (ResultAPI result : resultList) {
switch(result.code) {
case IAPV4RestrictPayments:
// 기기내 구매 차단 여부를 확인하세요.
break;
case IAPV4PlayStoreFinishFail:
// 구매 완료 처리할 아이템이 비정상적인 경로로 구매 된 아이템인지 확인하세요.
// 정상적인 경로로 구매 된 아이템 종료 처리시 지속적으로 해당 에러가 발생하는 경우 HIVE에 문의하세요.
break;
...
}
}
}
});
NSMutableArray<NSString*> *marketPidList = [NSMutableArray array];
[marketPidList addObject:iapV4Receipt.product.marketPid];
[HIVEIAPV4 transactionMultiFinish:marketPidList handler:^(NSArray<HIVEResultAPI *> *resultList, NSArray<NSString *> *marketPidList) {
for(HIVEResultAPI *result in resultList) {
switch (result.code) {
case kIAPV4RestrictPayments:
// 기기내 구매 차단 여부를 확인하세요.
break;
case kIAPV4PlayStoreFinishFail:
// 구매 완료 처리할 아이템이 비정상적인 경로로 구매 된 아이템인지 확인하세요.
// 정상적인 경로로 구매 된 아이템 종료 처리시 지속적으로 해당 에러가 발생하는 경우 HIVE에 문의하세요.
break;
//...
}
}
}];
Code | Message | How to solve |
---|---|---|
(필수 구현) IAPV4RestrictPayments | Apple App Store 구매 권한이 없습니다. | 기기내 구매 차단 여부를 확인하세요. |
(필수 구현) IAPV4PlayStoreFinishFail | [Google Market] Google Market에 구매 동기화 중 에러가 발생하였습니다. | 구매 완료 처리할 아이템이 비정상적인 경로로 구매 된 아이템인지 확인하세요. 정상적인 경로로 구매 된 아이템 종료 처리시 지속적으로 해당 에러가 발생하는 경우 HIVE에 문의하세요. |
IAPV4NotInitialize | HIVE SDK 초기화가 되어있지 않습니다. | AuthV4.setup API를 호출하여 HIVE SDK 초기화를 수행하세요. API 보기 |
IAPV4NeedMarketConnect | 마켓 연동이 되어있지 않습니다. | IAPV4.MarketConnect API를 호출하여 IAPV4 Market 연동를 수행하세요. |
IAPV4NeedSignIn | 로그인이 되어있지 않습니다. | AuthV4.helper.signIn API를 호출하여 로그인을 수행하세요. API 보기 |
IAPV4NotSupportedMarket | 현재 기기의 OS에서 지원할 수 없는 Market을 선택하였습니다. | Market 선택 팝업에서 지원할 수 없는 Market이 노출되지 않도록 하세요. |
IAPV4FinishMarketPidEmpty | API 호출시 전달한 marketPidList값이 유효하지 않습니다. | 구매 가능한 marketPid값을 입력해주세요. |
IAPV4LebiFinishFail | [Lebi Market] Lebi 서버에 해당 아이템 구매 정보가 존재하지 않습니다. | 구매 완료 처리할 아이템이 비정상적인 경로로 구매 된 아이템인지 확인하세요. 정상적인 경로로 구매 된 아이템 종료 처리시 지속적으로 해당 에러가 발생하는 경우 HIVE에 문의하세요. |
hive.IAPV4.checkPromotePurchase¶
Code | Message | How to solve |
---|---|---|
(필수 구현) IAPV4RestrictPayments | Apple App Store 구매 권한이 없습니다. | 기기내 구매 차단 여부를 확인하세요. |
IAPV4NotInitialize | HIVE SDK 초기화가 되어있지 않습니다. | AuthV4.setup API를 호출하여 HIVE SDK 초기화를 수행하세요. API 보기 |
IAPV4NeedMarketConnect | 마켓 연동이 되어있지 않습니다. | IAPV4.MarketConnect API를 호출하여 IAPV4 Market 연동를 수행하세요. |
IAPV4NeedSignIn | 로그인이 되어있지 않습니다. | AuthV4.helper.signIn API를 호출하여 로그인을 수행하세요. API 보기 |
IAPV4NotSupportedMarket | 현재 기기의 OS에서 지원할 수 없는 Market을 선택하였습니다. | Market 선택 팝업에서 지원할 수 없는 Market이 노출되지 않도록 하세요. |
IAPV4EmptyProductList | HIVE에 등록된 구매 가능한 아이템이 존재하지 않습니다. | HIVE에 구매할 아이템 정보를 등록하세요. |
IAPV4InProgressPurchasing | 구매가 이미 진행중 입니다. | IAPV4.purchase API를 통해 구매가 이미 진행 중 입니다. |
IAPV4InProgressRestoring | 구매복구가 이미 진행 중 입니다. | IAPV4.restore API를 통해 구매복구가 이미 진행 중 입니다. |
IAPV4InProgressCheckPromote | Promote 인앱 구매 정보 호출 기능을 사용중입니다. | IAPV4.checkPromotePurchase API를 통해 Promote 구매 정보 요청이 이미 진행 중 입니다. |
IAPV4PromoteMarketPidEmpty | API 호출시 전달한 marketPidList값이 유효하지 않습니다. | 구매 가능한 marketPid값을 입력해주세요. |
hive.IAPV4.showMarketSelection¶
IAPV4.showMarketSelection ((ResultAPI result, List<IAPV4.IAPV4Type> iapV4TypeList) => {
switch(result.code) {
case ResultAPI.Code.IAPV4CancelMarketSelect:
// 구매 진행할 Market 선택을 취소하거나, 선택 처리중 에러가 발생하였습니다.
// Market 선택이 진행되지 않으면 구매가 진행 될 수 없으므로 해당 API를 재시도하세요.
// 해당 에러가 지속되는 경우 전달받은 메시지와 함께 HIVE에 문의주세요.
break;
...
}
});
IAPV4::showMarketSelection([](ResultAPI const & result,std::vector<IAPV4Type> const & marketIDs) {
switch(result.code) {
case ResultAPI::Code::IAPV4CancelMarketSelect:
// 구매 진행할 Market 선택을 취소하거나, 선택 처리중 에러가 발생하였습니다.
// Market 선택이 진행되지 않으면 구매가 진행 될 수 없으므로 해당 API를 재시도하세요.
// 해당 에러가 지속되는 경우 전달받은 메시지와 함께 HIVE에 문의주세요.
break;
...
}
});
IAPV4.showMarketSelection(new IAPV4.IAPV4MarketInfoListener() {
@Override
public void onIAPV4MarketInfo(ResultAPI result, List<IAPV4Type> iapV4TypeList) {
switch(result.code) {
case IAPV4CancelMarketSelect:
// 구매 진행할 Market 선택을 취소하거나, 선택 처리중 에러가 발생하였습니다.
// Market 선택이 진행되지 않으면 구매가 진행 될 수 없으므로 해당 API를 재시도하세요.
// 해당 에러가 지속되는 경우 전달받은 메시지와 함께 HIVE에 문의주세요.
break;
...
}
}
});
Code | Message | How to solve |
---|---|---|
(필수 구현) IAPV4CancelMarketSelect | 구매 진행할 Market 선택에 에러가 발생하였습니다. | 구매 진행할 Market 선택을 취소하거나, 선택 처리중 에러가 발생하였습니다. Market 선택이 진행되지 않으면 구매가 진행 될 수 없으므로 해당 API를 재시도하세요. 해당 에러가 지속되는 경우 전달받은 메시지와 함께 HIVE에 문의주세요. |
IAPV4NeedMarketConnect | 마켓 초기화가 되어있지 않습니다. | IAPV4.MarketConnect API를 호출하여 IAPV4 Market 초기화를 수행하세요. |
IAPV4NeedSignIn | 로그인이 되어있지 않습니다. | AuthV4.helper.signIn API를 호출하여 로그인을 수행하세요. API 보기 |
hive.IAPV4.getBalanceInfo (Android only)¶
IAPV4.getBalanceInfo ((ResultAPI result, int balance) => {
switch(result.code) {
/***** Lebi 마켓 이용 *****/
case ResultAPI.Code.IAPV4LebiInternalRequestException:
// 일시적으로 해당 현상이 발생 할 수 있습니다.
// 해당 현상이 지속되는 경우 전달받은 메시지와 함께 HIVE에 문의주세요.
break;
case ResultAPI.Code.CommonUnknown:
// 일시적으로 해당 현상이 발생 할 수 있습니다.
// 해당 현상이 지속되는 경우 전달받은 메시지와 함께 HIVE에 문의주세요.
break;
case ResultAPI.Code.IAPV4LebiBalanceParamJsonException:
// 일시적으로 해당 현상이 발생 할 수 있습니다.
// 해당 현상이 지속되는 경우 전달받은 메시지와 함께 HIVE에 문의주세요.
break;
case ResultAPI.Code.IAPV4LebiBalanceNetworkError:
// 일시적으로 해당 현상이 발생 할 수 있습니다.
// 해당 현상이 지속되는 경우 전달받은 메시지와 함께 HIVE에 문의주세요.
break;
case ResultAPI.Code.IAPV4LebiPostException:
// 일시적으로 해당 현상이 발생 할 수 있습니다.
// 해당 현상이 지속되는 경우 전달받은 메시지와 함께 HIVE에 문의주세요.
break;
...
}
});
IAPV4::getBalanceInfo([](ResultAPI const & result, int balance) {
switch(result.code) {
/***** Lebi 마켓 이용 *****/
case ResultAPI::Code::IAPV4LebiInternalRequestException:
// 일시적으로 해당 현상이 발생 할 수 있습니다.
// 해당 현상이 지속되는 경우 전달받은 메시지와 함께 HIVE에 문의주세요.
break;
case ResultAPI::Code::CommonUnknown:
// 일시적으로 해당 현상이 발생 할 수 있습니다.
// 해당 현상이 지속되는 경우 전달받은 메시지와 함께 HIVE에 문의주세요.
break;
case ResultAPI::Code::IAPV4LebiBalanceParamJsonException:
// 일시적으로 해당 현상이 발생 할 수 있습니다.
// 해당 현상이 지속되는 경우 전달받은 메시지와 함께 HIVE에 문의주세요.
break;
case ResultAPI::Code::IAPV4LebiBalanceNetworkError:
// 일시적으로 해당 현상이 발생 할 수 있습니다.
// 해당 현상이 지속되는 경우 전달받은 메시지와 함께 HIVE에 문의주세요.
break;
case ResultAPI::Code::IAPV4LebiPostException:
// 일시적으로 해당 현상이 발생 할 수 있습니다.
// 해당 현상이 지속되는 경우 전달받은 메시지와 함께 HIVE에 문의주세요.
break;
...
}
});
IAPV4.getBalanceInfo(new IAPV4.IAPV4BalanceInfoListener() {
@Override
public void onIAPV4Balance(ResultAPI result, int balance) {
switch(result.code) {
/***** Lebi 마켓 이용 *****/
case IAPV4LebiInternalRequestException:
// 일시적으로 해당 현상이 발생 할 수 있습니다.
// 해당 현상이 지속되는 경우 전달받은 메시지와 함께 HIVE에 문의주세요.
break;
case CommonUnknown:
// 일시적으로 해당 현상이 발생 할 수 있습니다.
// 해당 현상이 지속되는 경우 전달받은 메시지와 함께 HIVE에 문의주세요.
break;
case IAPV4LebiBalanceParamJsonException:
// 일시적으로 해당 현상이 발생 할 수 있습니다.
// 해당 현상이 지속되는 경우 전달받은 메시지와 함께 HIVE에 문의주세요.
break;
case IAPV4LebiBalanceNetworkError:
// 일시적으로 해당 현상이 발생 할 수 있습니다.
// 해당 현상이 지속되는 경우 전달받은 메시지와 함께 HIVE에 문의주세요.
break;
case IAPV4LebiPostException:
// 일시적으로 해당 현상이 발생 할 수 있습니다.
// 해당 현상이 지속되는 경우 전달받은 메시지와 함께 HIVE에 문의주세요.
break;
...
}
}
});
Code | Message | How to solve |
---|---|---|
(필수 구현) IAPV4LebiInternalRequestException | [Lebi Market] Lebi Market 서버 통신 응답 데이터가 비정상입니다. | 일시적으로 해당 현상이 발생 할 수 있습니다. 해당 현상이 지속되는 경우 전달받은 메시지와 함께 HIVE에 문의주세요. |
(필수 구현) CommonUnknown | [Lebi Market] Lebi Market 서버 통신 응답 데이터 처리 중 알 수 없는 에러가 발생하였습니다. | 일시적으로 해당 현상이 발생 할 수 있습니다. 해당 현상이 지속되는 경우 전달받은 메시지와 함께 HIVE에 문의주세요. |
(필수 구현) IAPV4LebiBalanceParamJsonException | [Lebi Market] Lebi Market 서버 통신 응답 데이터 포맷이 처리 할 수 없는 형태입니다. | 일시적으로 해당 현상이 발생 할 수 있습니다. 해당 현상이 지속되는 경우 전달받은 메시지와 함께 HIVE에 문의주세요. |
(필수 구현) IAPV4LebiBalanceNetworkError | [Lebi Market] Lebi Market 서버 통신 응답값이 정상이 아닙니다. | 일시적으로 해당 현상이 발생 할 수 있습니다. 해당 현상이 지속되는 경우 전달받은 메시지와 함께 HIVE에 문의주세요. |
(필수 구현) IAPV4LebiPostException | [Lebi Market] Lebi Market 서버 통신 요청 데이터가 비정상입니다. | 일시적으로 해당 현상이 발생 할 수 있습니다. 해당 현상이 지속되는 경우 전달받은 메시지와 함께 HIVE에 문의주세요. |
IAPV4NotInitialize | HIVE SDK 초기화가 되어있지 않습니다. | AuthV4.setup API를 호출하여 HIVE SDK 초기화를 수행하세요. API 보기 |
IAPV4NeedMarketConnect | 마켓 연동이 되어있지 않습니다. | IAPV4.MarketConnect API를 호출하여 IAPV4 Market 연동를 수행하세요. |
IAPV4NeedSignIn | 로그인이 되어있지 않습니다. | AuthV4.helper.signIn API를 호출하여 로그인을 수행하세요. API 보기 |
IAPV4MarketNotSupportedAPI | [Google Market] 현재 선택된 Market에서 해당 API를 지원하지 않습니다. | 지원 가능한 Market에서 해당 API를 호출하세요. |
IAPV4MarketNotSupportedAPI | [OneStore Market] 현재 선택된 Market에서 해당 API를 지원하지 않습니다. | 지원 가능한 Market에서 해당 API를 호출하세요. |
hive.IAPV4.showCharge (Android Only)¶
Code | Message | How to solve |
---|---|---|
IAPV4NotInitialize | HIVE SDK 초기화가 되어있지 않습니다. | AuthV4.setup API를 호출하여 HIVE SDK 초기화를 수행하세요. API 보기 |
IAPV4NeedMarketConnect | 마켓 연동이 되어있지 않습니다. | IAPV4.MarketConnect API를 호출하여 IAPV4 Market 연동를 수행하세요. |
IAPV4NeedSignIn | 로그인이 되어있지 않습니다. | AuthV4.helper.signIn API를 호출하여 로그인을 수행하세요. API 보기 |
IAPV4MarketNotSupportedAPI | [Google Market] 현재 선택된 Market에서 해당 API를 지원하지 않습니다. | 지원 가능한 Market에서 해당 API를 호출하세요. |
IAPV4MarketNotSupportedAPI | [OneStore Market] 현재 선택된 Market에서 해당 API를 지원하지 않습니다. | 지원 가능한 Market에서 해당 API를 호출하세요. |