Hive SDK v1.19.6부터는 Hive SDK v1 패키지가 개선되어 HiveSDK v1.19.6이라는 이름으로 가이드를 제공합니다. 아래의 가이드를 통해 변경된 라이브러리 구성과 설정 방법에 대해 알아보세요.

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

HiveSDK v1.19.6 패키징 파일 구조

a. framework

HiveSDK v1.19.6 iOS framework로 구성되어 있습니다. 기존 Hive SDK v1 framework를 모두 제거한 후 새 framework 폴더로 교체하세요.

b. include

HiveSDK v1.19.6 iOS header 파일로 구성되어 있습니다.

c. resource

HiveSDK v1.19.6 iOS의 resource는 모든 모듈의 resource가 통합된 HIVEResource.bundle로 구성되어 있습니다. 기존 Hive SDK v1 resources 폴더와 폴더 내 bundle 파일 제거 후 새 resource 폴더로 교체하세요.

 


설정 변경사항

v1 설정 변경사항은 Hive SDK v1.19.6 적용 시 기존 적용 사항과의 변경점에 대해 안내합니다. 이 가이드에서 안내하지 않는 내용은 기존의 Hive 설정하기 > iOS 가이드를 참고하세요.

프레임워크 추가하기

  1. 기존 HiveSDK v1 프레임워크를 모두 제거하고 HiveSDK v1.19.6 프레임워크로 교체하세요.
    • HiveSDK v1.19.6 프레임워크
      1. Unity 빌드 시: HIVE_SDK_UnityPlugin.framework
        그 외: HIVE_SDK_Plugin.framework
      2. HiveAppTrackingTransparency.framework
      3. HIVEBase.framework
      4. HIVECore.framework
      5. HIVEExtensions.framework
      6. HIVEIAPV4.framework
      7. HIVEProtocol.framework
      8. HIVEService.framework
      9. HIVEUI.framework
      10. ProviderAdapter.framework
      11. ProviderAdjust.framework (선택사항)
      12. ProviderQQ.framework (선택사항)
      13. ProviderSingular.framework (선택사항)
  2. Xcode 내장 프레임워크도 정리되었습니다.
    • Xcode 내장 프레임워크
      1. AppTrackingTransparency.framework
      2. Accelerate.framework
      3. CFNetwork.framework
      4. libc++.tbd
      5. libz.tbd
      6. libsqlite3.tbd
      7. StoreKit.framework
      8. AdSupport.framework
      9. CoreData.framework
      10. CoreTelephony.framework
      11. SafariServices.framework
      12. Security.framework
      13. UIKit.framework
      14. iAd.framework
      15. MobileCoreServices.framework
      16. WebKit.framework
  3. provider framework는 사용하지 않는다면 제거 가능합니다.
    • ProviderAdjust.framework: Adjust Tracker 사용
    • ProviderSingular.framework: Singular Tracker 사용
    • ProviderQQ.framework, TencentOpenAPI.framework: QQ signin 사용

프레임워크 설치하기

라이브러리 추가하기

모든 라이브러리가 framework 기준으로 작동하도록 변경되었습니다. 기존 HiveSDK v1 라이브러리 내 폴더와 파일을 삭제하세요.

  • Build Settings > Serch Paths > Library Search Paths 내 라이브러리 설정을 제거하세요.
    • libC2SModule_iphoneos.a
    • libC2SModule_iphoneosd.a
    • libC2SModule_iphonesimulator.a
    • libC2SModule_iphonesimulatord.a

리소스 추가하기

모든 resource가 하나로 통합되었습니다. 기존 HiveSDK v1 리소스를 모두 삭제하고 HiveSDK v1.19.6 리소스 파일인 HIVEResource.bundle로 교체하세요.

헤더파일 추가하기

헤더 파일 내부 값이 변경되었습니다. 기존 HiveSDK v1 헤더파일을 모두 삭제하고 HiveSDK v1.19.6 헤더파일로 교체하세요. 그 외 설정 방법은 SDK v1 개발 > Hive 설정하기 > iOS > 헤더파일 추가하기 가이드를 확인하세요.

일반 설정하기

화이트 리스트 추가하기

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

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

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

화면 문구 변경 파일의 저장 경로가 변경되었습니다. 맞춤식 권한 고지 팝업 이용 시 다국어 지원 파일의 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