콘텐츠로 이동

iOS SDK - 기능 지원 범위 (Feature Support)

이 문서는 Groobee iOS SDK에서 제공하는 기능과 현재 지원 상태를 정리한 문서입니다.

본 내용은 현재 최신 권장 SDK 버전 기준의 기능 지원 상태입니다. 특정 이전 버전에서의 지원 여부나 버전별 변경 내역은 iOS SDK 변경 로그에서 확인하세요.

최소 지원 OS: iOS 10


iOS 버전별 이벤트 지원

SDK 연동 iOS 버전 Push Open Push Receive InAppMessage
iOS 13 미만 O △ (Background/Foreground 모드에 따라 결정) O
iOS 13 이상 O O O

기능 지원 목록

초기 설정 (AppDelegate / GroobeeConfig)

기능 메소드 최신 상태 비고
SDK 초기화 Groobee.configure ✅ 지원 필수
서비스키 등록 GroobeeConfigBuilder.setServiceKey ✅ 지원 필수, serviceKeybundleId 전달
인앱 메시지 상단 마진 setInAppMsgMarginTop ✅ 지원 선택
인앱 메시지 하단 마진 setInAppMsgMarginBottom ✅ 지원 선택
푸시 알림 수신 설정 버튼 setNotificationSettingsButton ✅ 지원 텍스트 + 딥링크 URL 지정, 다국어 처리 시 NSLocalizedString 권장
앱 생명주기 연동 GroobeeKitLifeCycle ✅ 지원 iOS 13 미만: AppDelegate, iOS 13 이상: SceneDelegate에 각 Life Cycle 메소드 연결
Firebase 초기화 FirebaseApp.configure ✅ 지원 필수
Firebase 메시징 델리게이트 Messaging.messaging().delegate ✅ 지원 필수
푸시 권한 요청 pushNotiConfirmation ✅ 지원 UNUserNotificationCenter.requestAuthorization 기반
Rich Push - Notification Service Extension GroobeeNotification.receiveService ✅ 지원 이미지/미디어 첨부 지원에 필요
Rich Push - Notification Content Extension GroobeeNotification.receiveContent ✅ 지원 커스텀 알림 UI 표시

회원 정보 설정

기능 메소드 최신 상태 비고
유저 로그인 setServiceLogin(memberId:) ✅ 지원 선택
유저 정보 등록 (개별 파라미터) setUserInfo(id:grade:age:gender:type:) ✅ 지원 선택
유저 정보 등록 (Map 오버로딩) setUserInfo(userInfo: [String: Any]) ✅ 지원 필수값: id, grade, age, gender, type / 추가값: vendorCd, point
유저 로그아웃 serviceLogout ✅ 지원 로그인했던 memberId 정보 초기화
유저 정보 초기화 memberDataClear ✅ 지원 세팅한 유저 정보 초기화
회원가입 완료 setMemberJoin(memberId:screenId:) ✅ 지원 전환율 측정
푸시 토큰 등록 setPushToken(pushToken:) ✅ 지원 푸시 사용 시 필수
푸시 동의 상태 동기화 syncMemberAgreed(memberId:) ✅ 지원 setServiceLogin/setMemberJoin 이후 호출
그루비 웹 쿠키 가져오기 getGroobeeWebCookies ✅ 지원 웹뷰에 쿠키 주입 용도

푸시 수신 동의 설정

기능 메소드 최신 상태 비고
푸시 사용 동의(전체) setPushAgreeAP(isPushAgreedAP:) ✅ 지원 푸시 사용 시 필수
광고 Push 사용 동의 setPushAgreeAA(isPushAgreedAA:) ✅ 지원 푸시 사용 시 필수
야간 Push 사용 동의 setPushAgreeAN(isPushAgreedAN:) ✅ 지원 21시 이후 발송 대상 제한
Push 동의 상태 조회 (동기) getPushAgreed(memberId:) ✅ 지원 인증 전 호출 시 null 반환 가능
Push 동의 상태 조회 (비동기/콜백) getPushAgreed(memberId:responseAgreeds:) ✅ 지원 ResponseAgreeds 콜백으로 결과 전달

페이지별 설정 (화면/행동 이벤트)

기능 메소드 최신 상태 비고
검색 키워드 setSearchKeyword(searchKwd:screenId:) ✅ 지원 선택
상품 상세 setViewGoods(goods:screenId:) ✅ 지원 선택
장바구니 setShoppingCart(goods:screenId:) ✅ 지원 선택
주문하기 setGoodsOrder(goods:screenId:) ✅ 지원 선택
주문 완료 setGoodsOrderComplete(orderNo:goods:screenId:) ✅ 지원 선택, 전환 측정
카테고리 setCategory(cateCd:cateNm:screenId:) ✅ 지원 선택
기타 화면 정보 setScreenData(screenName:screenId:) ✅ 지원 선택
커스텀 이벤트 setCustomEvent(eventKey:screenId:eventValue:) ✅ 지원 선택

Native + 웹 데이터 동기화 (하이브리드)

기능 메소드 최신 상태 비고
웹뷰 쿠키 동기화 setWebViewCookies(webView:urlRequest:) ✅ 지원 WKWebViewdidFinish navigation에서 호출 권장

추천 상품

기능 메소드 최신 상태 비고
추천 상품 리스트 (동기식) getRecommendGoods(campaignKey:timeout:) ✅ 지원 응답시간 초과 시 빈 Array 반환
추천 상품 리스트 (비동기식/콜백) getRecommendGoods(campaignKey:responseGoods:) ✅ 지원 ResponseGoods 콜백으로 결과 전달
추천 상품 노출 통계 setShowRecommendGoods(goods:campaignKey:algorithmCd:requestId:) ✅ 지원 노출 상태에 따른 통계 측정
추천 상품 클릭 통계 setClickRecommendGoods(goods:campaignKey:algorithmCd:requestId:) ✅ 지원 클릭 상태에 따른 통계 측정

로그 유틸리티 (LoggerUtils)

기능 메소드 최신 상태 비고
로그 레벨 설정 LoggerUtils.setLogLevel ✅ 지원 verbose, debug, info, warn, error, none
상세 로그 활성화 LoggerUtils.setDetailLogEnabled ✅ 지원 선택
추적 아이디 활성화 LoggerUtils.setTraceEnabled ✅ 지원 선택
로그 콜백 등록 LoggerUtils.setLogCallback ✅ 지원 GroobeeLogCallback 구현체 전달
로그 옵션 일괄 설정 LoggerUtils.setOptions ✅ 지원 LOG_LEVEL, DETAIL_LOG_ENABLED, TRACE_ENABLED, LOG_CALLBACK 지원

참고 문서