요구 사항
모듈 테스트 환경
Android SDK r23 이상
Android NDK r9d 이상
준비 사항
AppID 발급
Facebook/Google+ 관련 키 각각 발급
IAP 코드 발급
마케팅 어트리뷰션 적용 시 개별 키값 발급 (1.5.0 이상 추가)
Hive 적용하기
Adnroid native module 대부분의 api는 completionHandler 및 CommonDelegate 방식을 동시에 지원하고 있다. 제공되는 샘플 앱에서는 CommonDelegate를 이용하여 처리하였다.
푸시 노티피케이션
서버 푸시(FCM)는 모듈 초기화 시 푸시 토큰을 서버에 전송한다.
Result Delegate 등록
AppDelegate에 응답을 받을 Relsult Delegate를 등록한다. Result Delegate는 통합 모듈에서 사용하는 API의 응답이 오는 callback 함수이다. Hive API 호출 시 따로 Completion Handler를 등록하지 않거나 API와 매칭되지 않는 응답은 Result Delegate로 온다. Completion Handler만 사용해도 무방하지만 InappDescription 같은 정보의 경우 Initalize 함수 요청 시점에 Result Delegate로 들어오는 응답이다. 그렇기 때문에 InApp Description 정보를 받아 처리하고 싶다면 Result Delegate에서 처리할 수 밖에 없게 된다.
< span class = "guide_font_blue" > [ c ++ ] < / span >
#import "C2SModule.h"
static void ResultDelegate ( C2SModuleApi api , const char * json , C2SModuleErrorCode code , const char * message ) ;
C2SModule enum
typedef enum _C2SModuleApi {
/** 소셜 초기화 */
C2SModuleApi_SocialInitialize,
/** 소셜 뷰 출력 */
C2SModuleApi_SocialShow,
/** sns 세션 정보 */
C2SModuleApi_SnsSession,
/** sns 로그인 */
C2SModuleApi_SnsLogin,
/** sns 로그아웃 */
C2SModuleApi_SnsLogout,
/** sns 탈퇴 */
C2SModuleApi_SnsUnregister,
/** sns 유저 정보 요청 */
C2SModuleApi_SnsUser,
/** sns 친구 정보 요청 */
C2SModuleApi_SnsFriends,
/** sns 메시지 보내기 */
C2SModuleApi_SnsMessage,
/** sns 포스팅 */
C2SModuleApi_SnsPost,
/** sns 뷰 출력 */
C2SModuleApi_SnsShow,
/** inapp 마켓 타겟팅 */
C2SModuleApi_InappPrepare,
/** inapp 구매 복구 */
C2SModuleApi_InappRestore,
/** inapp 구매 요청 */
C2SModuleApi_InappPurchase,
/** inapp 구매 완료 */
C2SModuleApi_InappFinish,
/** inapp 상품 정보 */
C2SModuleApi_InappDescription,
/** 러비 잔액 조회 */
C2SModuleApi_RequestBalance,
/** push 푸시 등록 */
C2SModuleApi_PushRegister,
/** push 푸시 제거 */
C2SModuleApi_PushUnregister,
/** push 푸시 옵션 */
C2SModuleApi_PushDescription,
/** promotion 뷰 출력 */
C2SModuleApi_PromotionShow,
/** promotion 뱃지 정보 및 웹뷰 정보 출력 */
C2SModuleApi_PromotionInfo,
/** interwork 시작 */
C2SModuleApi_InterworkStart,
/** interwork 끝 */
C2SModuleApi_InterworkDelegate,
/** promotion 집객 정보 출력 */
C2SModuleApi_PromotionAcquisition,
/** Hive IAP 초기화 */
C2SModuleApi_HiveIAPInitialize,
/** Hive IAP 정보얻기 */
C2SModuleApi_HiveIAPInfo,
/** Hive IAP 정보보기 */
C2SModuleApi_HiveIAPShow,
/** Hive IAP 구매하기 */
C2SModuleApi_HiveIAPPurchase,
/** Hive IAP 구매복구 */
C2SModuleApi_HiveIAPRestore,
/** 유저 인게이지 스킴 진행 */
C2SModuleApi_EngagementProcessScheme,
/** 유저 인게이지 이벤트 불러오기*/
C2SModuleApi_EngagementGetEvents,
/** 유저 인게이지 쿠폰 소모 */
C2SModuleApi_EngagementConsumeCoupon,
/** 유저 인게이지 시작 */
C2SModuleApi_EngagementStart,
/** 유저 인게이지 끝 */
C2SModuleApi_EngagementEnd,
/** 공지 팝업 출력 */
C2SModuleApi_SocialInfo,
/** User Engagement Game scheme */
C2SModuleApi_EngagementGameScheme,
/** Promotion2.0 뷰 출력 */
C2SModuleApi_HivePromotionShow,
/** Promotion2.0 뷰 정보 출력 */
C2SModuleApi_HivePromotionInfo,
/** Promotion2.0 오퍼월 상태값 출력 */
C2SModuleApi_HivePromotionGetOfferwallStat
/** inapp 원격 구매 상품 정보 요청 */
C2SModuleApi_InappCheckPromotePurchase,
/** Hive IAP 원격 구매 상품 정보 요청 */
C2SModuleApi_HiveIAPCheckPromotePurchase,
/** Promotion Companion 출력 */
C2SModuleApi_PromotionCompanion,
/** Promotion Youtube Playback */
C2SModuleApi_PromotionPlayback,
/** HivePromotion Youtube Playback */
C2SModuleApi_HivePromotionPlayback,
} C2SModuleApi;