iOS 11 버전부터 ‘App Store에 노출한 인앱 상품의 인게임 구매 연동’ (이하 Promotional IAP) 기능을 지원합니다. Apple App Store의 상품 페이지 및 검색창에서 게임 내 인앱 상품을 노출할 수 있으며, 최대 20개까지 등록 가능합니다. Promotional IAP로 등록한 상품은 iOS 11 버전 이상에서만 볼 수 있습니다.
Promotional IAP에 대한 자세한 설명은 다음을 참고해주세요.
Promotional IAP를 구현하기 위해 Hive SDK에서는 Apple App Store에서 구매 요청이 들어온 마켓 PID 값을 반환해주는 CheckPromotePurchase
API를 제공합니다. 이 작업이 완료되었다면 IAP v4 초기화 이후 CheckPromotePurchase 전역 콜백을 통해서 state=”enable” 콜백을 받을 수 있으며 콜백 전달 시, 상품 목록 조회를 호출 후 CheckPromotePurchase
API를 호출하여 App Store에서 구매 요청이 들어온 마켓 PID 값을 반환받을 수 있습니다. 마켓 PID를 반환받았다면 마켓 PID에 해당하는 상품을 구매할 수 있도록 구현하세요.
C2SModuleInappV4_CheckPromotePurchase
- Request
Argument Type Type Description Platform Argument 없음 iOS - Response
Argument Type Type Description Platform pid String 아이템의 Product ID iOS - App Store Delegate 시 전달되는 전역 콜백
Argument Type Type Description Platform state String “enable”
App Store로부터 pid를 전달받았을 때 전역콜백으로 전달iOS
API Reference: C2SModule.InappV4.CheckPromotePurchase
1 2 3 4 5 6 |
C2SModule.Parameter arg = new C2SModule.Parameter(); C2SModule.Error error; if(!C2SModule.InappV4.CheckPromotePurchase(arg. out error)) { // 에러 발생 시 처리 } |
API Reference: C2SModuleInappV4_CheckPromotePurchase
1 2 3 4 5 6 7 |
C2SModule_Cocos2dx::C2SModuleError eror; Json::Value arg; if( ::C2SModuleInappV4_CheckPromotePurchase(strJSON.c_str(), &error ) == false) // 에러 발생 시 처리 } |
API Reference: C2SModuleInappV4 CheckPromotePurchase
1 2 3 4 5 6 7 8 |
NSError* error; NSMutableDictionary* arg = [[NSMutableDictionary alloc] init]; [C2SModuleInappV4 CheckPromotePurchase:nil error:&error completionHandler:^(NSDictionary* resultArg, NSError* resultError) { if(resultError == nil) { // 성공 } }]; |