Hive SDK v1.20.2.2부터는 CocoaPods를 사용해 Hive SDK를 적용할 수 있습니다. 아래에서 변경된 라이브러리 구성과 설정 방법을 알아보세요.

본 가이드는 Xcode 14.1 환경을 기준으로 안내합니다.

Hive SDK 설치 및 설정

CocoaPods 및 Hive SDK 설치하기

아래의 순서대로 CocosPods 및 Hive SDK를 설치하세요.

  1. 터미널을 통해 CocoaPods를 설치합니다.
    sudo gem install cocoapods

  2. CocoaPods 설정 파일을 구성할 목적으로 Podfile을 생성합니다.
    sudo pod init

  3. 생성된 Podfile에 source로 Hive SDK 저장소를 추가합니다.
    source 'https://github.com/Com2uSPlatformCorp/HiveSDK-iOS'

  4. 편집기에서 Podfile을 열어 Hive SDK에 필요한 프레임워크를 추가합니다.
    아래와 같이, Hive SDK iOS v4 23.2.2 및 iOS v1 21.1.1에 종속된 각 서드 파티 프레임워크 버전을 참고하세요.
    iOS v4 23.2.2에 종속된 서드 파티 프레임워크 iOS v1 21.1.1에 종속된 서드 파티 프레임워크
    • HiveAuthV4ProviderAppsFlyer (23.2.2)
      • AppsFlyerFramework (6.12.1)
      • AppsFlyer-AdRevenue (6.12.1)
    • HiveAuthV4ProviderFacebook (23.0.0)

      • FBSDKCoreKit (16.2.1)
      • FBSDKLoginKit (16.2.1)
      • FBSDKShareKit (16.2.1)
    • HiveAnalyticsProviderAdjust (23.2.2)
      • Adjust (4.35.2)
    • HiveAnalyticsProviderSingular (23.2.2)
      • Singular-SDK (12.1.1)
    • HiveAuthV4ProviderGoogle (23.2.2)
      • GoogleSignIn (7.0.0)
    • HiveAuthV4ProviderQQ (23.2.2)

      • HiveTencentOpenAPI (23.2.2): Hive에서 배포한 TencentOpenAPI CocoaPods 버전(TencentOpenAPI 3.5.14)
    • HiveSDK (23.2.2)

      • SDWebIamge (5.18.7)
    • HiveSDK (4.21.1.1)
      • SDWebIamge (5.13.4)
    • HiveProviderAdjust (4.21.1.1)
      • Adjust (4.33.3)
    • HiveProviderAppsFlyer (4.21.1.1)
      • AppsFlyerFramework (6.9.1)
    • HiveAnalyticsProviderSingular (4.21.1.1)
      • Singular-SDK (12.0.1)
    • HiveProviderFacebook (4.21.1.1)

      • FBSDKCoreKit (Podfile에 작성된 iOS 최소 지원 버전과 호환되는 최신 버전)
      • FBSDKLoginKit (Podfile에 작성된 iOS 최소 지원 버전과 호환되는 최신 버전)
      • FBSDKShareKit (Podfile에 작성된 iOS 최소 지원 버전과 호환되는 최신 버전)
      • FBSDKGamingServicesKit (Podfile에 작성된 iOS 최소 지원 버전과 호환되는 최신 버전)
    • HiveProviderFacebook/Facebook15 (4.21.1.1)

      Hive SDK와 호환성이 검증된 Facebook 15 버전입니다. iOS 최소 지원 버전 12 이상이며
      HiveProviderFacebook 와 함께 사용해야 합니다. iOS 환경에서 Facebook 13 이상 적용 시
      Facebook Client Token 설정이 필수입니다.

      • FBSDKCoreKit (15.0.0)
      • FBSDKLoginKit (15.0.0)
      • FBSDKShareKit (15.0.0)
      • FBSDKGamingServicesKit (15.0.0)
    • HiveProviderGoogle (4.21.1.1)
      • GoogleSignIn (6.2.4)
      • GoogleUtilities (7.8.0)
    • HiveProviderQQ (4.21.1.1)

      • HiveTencentOpenAPI (4.21.1.1): Hive에서 배포한 TencentOpenAPI CocoaPods 버전(
        TencentOpenAPI 3.5.12)
     

    Podfile 파일 작성 예시는 아래와 같습니다. 보다 자세한 내용은 프레임워크 설치 후 생성된 Podfile.lock 파일에서 확인하실 수 있습니다.

  5. CocoaPods 설정에 따라 프레임워크를 설치합니다.

    CocoaPods Podfile에서 프로젝트 메인 타겟으로 추가해야하는 프레임워크 상세 목록은 아래와 같습니다.

    Hive SDK 기본 동작을 위한 필수 적용 프레임워크추가 선택 적용이 가능한 프레임워크
    • HiveSDK
      • Hive SDK의 전반적인 동작에 필수적인 프레임워크
      • HiveAppTrackingTransparency
      • iOS 14 이상의 디바이스에서 앱추적 권한을 획득하기 위한 프레임워크
      • HiveResource
      • Hive SDK에서 제공하는 UI 리소스 번들(.bundle). 반드시 프로젝트의 메인 타겟("HIVE_GAME_COOL")에 추가되어야 합니다.
    • Hercules
      • 보안 모듈 프레임워크
    • HiveExtensions
      • Hive 푸시 알림의 추가 확장 기능을 사용하기 위한 프레임워크
    • HiveAnalyticsProviderAdjust
      • Adjust 마케팅 트래킹 프레임워크
    • HiveAnalyticsProviderAppsFlyer
      • AppsFlyer 마케팅 트래킹 프레임워크
    • HiveAnalyticsProviderFirebase
      • Firebase 마케팅 트래킹 프레임워크
    • HiveAnalyticsProviderSingular
      • Singular 마케팅 트래킹 프레임워크
    • HiveAuthV4ProviderAppleSignIn
      • Sign in with Apple 로그인을 위한 프레임워크
    • HiveAuthV4ProviderFacebook
      • Facebook 로그인 및 기타 소셜 기능을 사용하기 위한 프레임워크
    • HiveAuthV4ProviderGoogle
      • Google 로그인을 위한 프레임워크
    • HiveAuthV4ProviderHive
      • Hive 멤버십 로그인을 위한 프레임워크
    • HiveAuthV4ProviderQQ
      • QQ 로그인을 위한 프레임워크
    • HivePromotion
      • 배너, 새소식 등 프로모션을 위한 프레임워크
    • HiveIAPV4
      • 인앱 결제, 환불 재결제를 위한 프레임워크
    • HiveSDKPluginC2S
      • Hive SDK C++ 언어용 인터페이스 플러그인 프레임워크
    • HiveSDKUnityPluginC2S
      • Hive SDK C# 언어용 인터페이스 플러그인 프레임워크

헤더 파일 추가하기

개발자 사이트에서 다운로드한 Hive SDK v1 패키지 파일에서 인터페이스 API 사용을 위해 프로젝트에 직접 추가해야 하는 헤더 파일(.h) 목록은 다음과 같습니다.

  • Module_Android.h
  • ModuleHelper_Android.h
  • C2SModule.h
  • C2SModuleApi.h
  • C2SModuleArgKey.h
  • C2SModuleErrorCode.h
  • adapt_tuple.h
  • Module_Cocos2d-x.h
  • ModuleHelper_Cocos2d-x.h
  • refobject.h
  • smartptr.h
  • Module_iOS.h
  • ModuleHelper_iOS.h
  • C2SModuleSecureVariable.h
  • cscrc32.h

이전 버전에 적용된 물리 파일 제거하기

컴파일 에러 방지를 위해 Hive SDK v1.20.2.2 버전 적용시 이전 버전에 적용 되었던 Hive SDK 관련 프레임워크(.framework), 리소스번들(.bundle) 라이브러리(.a) 확장자에 해당하는 물리파일은 모두 제거되어야 합니다.

화이트 리스트 추가하기

Facebook

Facebook Scheme을 화이트 리스트에 추가하려면 프로젝트 창을 이용하거나 Info.plist 파일에 코드를 직접 추가하는 방법이 있습니다.

iOS 9부터, 외부 앱으로 전환 시 화이트 리스트에 추가된 Scheme에 대해서만 전환이 허용됩니다. iOS 9 환경에서 유저가 여러분의 게임에서 Facebook으로 로그인 할 때 Hive는 사파리 뷰 컨트롤러를 활용하여, 사파리 웹뷰로 Facebook 로그인을 진행시킵니다. 때문에, 게임 앱에서 Facebook 앱으로의 전환이 발생하지 않고 앱 내부의 브라우저를 이용하여 로그인을 처리할 수 있습니다.
Facebook은 화이트 리스트에 Facebook Scheme을 기본적으로 등록하도록 권장하고 있습니다. Facebook SDK 문서 보기

프로젝트 창에서 수정하기

  1. Xcode 프로젝트 창의 프로젝트 네비게이터에서 여러분의 프로젝트를 선택하세요.
  2. TARGETS 목록에서 여러분의 앱을 선택하세요.
  3. Info 탭을 클릭하세요.
  4. Info 탭의 LSApplicationQueriesSchemes 클릭하고 + 버튼을 클릭하여 아래의 Scheme을 추가하세요.
    • fbapi
    • fb-messenger-share-api

Info.plist 직접 수정하기

Info.plist에 아래 코드를 직접 추가하는 방법도 있습니다.

QQ

QQ Scheme을 화이트 리스트에 추가하려면 프로젝트 창을 이용하거나 Info.plist 파일에 코드를 직접 추가하는 방법이 있습니다.

프로젝트 창에서 수정하기

  1. Xcode 프로젝트 창의 프로젝트 네비게이터에서 여러분의 프로젝트를 선택하세요.
  2. TARGETS 목록에서 여러분의 앱을 선택하세요.
  3. Info 탭을 클릭하세요.
  4. Info 탭의 LSApplicationQueriesSchemes 클릭하고 + 버튼을 클릭하여 다음 Scheme들을 추가하세요.
  • mqqOpensdkSSoLogin
  • mqqopensdkapiV2
  • mqqopensdkapiV3
  • wtloginmqq2
  • mqq
  • mqqapi
  • mqqopensdknopasteboard
  • mqqopensdknopasteboardios16

Info.plist 직접 수정하기

Info.plist에 아래 코드를 직접 추가하는 방법도 있습니다.

Hive 설정하기

Facebook 설정하기

1. Xcode 프로젝트 창의 프로젝트 네비게이터에서 여러분의 프로젝트를 선택하세요.
2. TARGETS 목록에서 여러분의 앱을 선택하세요.
3. Info 탭을 클릭하세요.
4. Info 탭 안의 Custom iOS Target Properties 항목을 클릭하고 FacebookAppID 속성에 Facebook App ID를 입력하세요.
* 앱 대시보드에서 설정 > 고급 > 보안 > 클라이언트 토큰 진입하여 FacebookClientToken 속성에 Facebook Client Token을 입력하세요. (Facebook 13 이상 버전 사용 시 필수) (참조 가이드)

5. Info 탭 안의 **URL Types** 항목을 클릭한 후 **+** 아이콘을 클릭하여 Additional url type properties 항목을 생성하세요.
6. Additional url type properties 항목 URL Schemes 란에 fb를 덧붙인 Facebook AppID를 입력하세요. 예. fb012342478841523

AppDelegate 적용하기

  • Unity 빌드 시 AppDelegate 설정은 제공된 HiveAppController.m에서 자동으로 진행됩니다.
  • AppDelegate.m 파일의 API 호출이 자동으로 진행됩니다.
  • Delegate 함수는 추가하되 내부 로직 진행은 생략하세요.
  • Hive Orientation 설정을 위해 supportedInterfaceOrientationsForWindow를 추가하세요.

빌드 설정하기

Xcode 프로젝트의 빌드 설정 시 Other Linker Flags 필드에 추가한 아래의 값을 삭제하세요. (기존 가이드 참조)

    • -lC2SModule_$(PLATFORM_NAME)d
    • -lC2SModule_$(PLATFORM_NAME)

아래의 값은 반드시 추가해야 합니다. (필수사항)

    • -ObjC
  • Swift Compiler – Language 항목에서 Swift Language Version이 Unspecified로 설정된 상태라면 Swift 4 이상의 값으로 변경하세요. 외부 라이브러리가 Swift를 사용하지 않는다면, 이 라이브러리가 사용하는 Swift Language Version이 노출되지 않을 수 있습니다.
  • Enable Bitcode 항목을 NO로 세팅한다.

앱 접근 권한에 대한 고지 화면 커스터마이징

화면 문구 변경 파일의 저장 경로가 변경되었습니다. 맞춤식 권한 고지 팝업 이용 시 다국어 지원 파일의 ko.lproj 폴더에서(기존 가이드 참조) Permission.strings 파일을 제거하고 변경 가이드에 따라 다시 설정하세요. (Permission.strings 파일의 내용은 변경사항 없습니다.)

 


추가 API

HiveSDK v1.19.6 적용 시 반드시 적용해야하는 API는 다음과 같습니다. 자세한 사항은 API의 참조 가이드로 안내된 페이지에서 확인하세요.

Social_Initianlize

  • 참조 가이드: SDK v1 개발 > Hive 초기화 > Social Initialize
  • Social_Initianlize API 호출 arg에 HiveSDK UI Orientation을 설정할 수 있는 hiveOrientation이 추가되었습니다.
    Argument Name Type Desc Platform 비고
    hiveOrientation string
    • Hive SDK UI 방향을 설정한다.
    • “all”, “portrait” or “landscape”
      default “UNDEFINED”
      “all”일 경우 기기 방향에 따라 HiveUI가 실시간 회전을 지원한다.
    all 1.19.6+

    실시간 회전을 지원하지 않는 게임에서는 반드시 게임 지원 방향에 맞춰 호출해야 합니다.

 


변경 또는 사용 중단된 API

HiveSDK v1.19.6 적용 시 변경되거나 사용 중단된 API는 다음과 같습니다. 자세한 사항은 각 API의 참조 가이드로 안내된 페이지에서 확인하세요.

Social_SetGameInfo

  • 참조 가이드: SDK v1 개발 > Hive 초기화 > Social SetGameInfo
  • Social_SetGameInfo API 호출 arg의 videmergencyMode로 바뀌었습니다.
    vid 값을 전달받아 세팅하던 기존 방식과는 다르게, emergencyMode 로 호출 시 마지막으로 로그인한 vid를 SDK에서 자동으로 세팅합니다.

    Argument Name Type Desc Platform 비고
    emergencyMode bool true일 경우 SDK에 저장된 계정 정보로 긴급 로그인을 진행한다.
    저장된 계정 정보가 없을 땐 false 반환 및 에러 전달
    all 1.19.6+

    Return Callback: 저장된 계정 정보를 전달합니다.

    Argument Name Type Desc Platform 비고
    vid string 긴급 로그인 계정의 vid all 1.19.6+
    did string 긴급 로그인 계정의 did all 1.19.6+
    accessToken string 긴급 로그인 계정의 accessToken all 1.19.6+

Engagement

  1. HiveSDK v1.19.6부터 Engagement scheme을 SDK에서 자체적으로 확인합니다. 확인 작업이 중복 진행되지 않도록 관련 설정 및 API 호출 구현부를 삭제하세요.
    • AppController(AppDelegate)에 코드 추가 부분을 제거
  2. Engagement_ProcessScheme API 호출 부분은 제거됩니다.
  3. Engagement_ConsumeCoupon API는 couponId 직접 처리 시에만 사용하며, delegate의 결과로 호출하는 로직은 제거됩니다.

 


기타 API

HiveSDK v1.19.6부터 다음의 API는 자동으로 설정되므로 호출하여도 동작하지 않습니다.

    • Push_Register: “deviceToken”
    • Push_Register: “remotePushOpen”
    • Social_openURL