adjust-icon

iOS SDK 연동 가이드

Adjust iOS SDK를 사용하면 iOS 앱에서 어트리뷰션, 이벤트 등을 기록할 수 있습니다. 이 가이드에서는 Adjust SDK를 앱과 연동하는 방법이 다루어집니다.

1. 프로젝트에 SDK 추가

iOS 앱에서 Adjust SDK를 사용하려면 우선 Xcode 프로젝트에 Adjust SDK를 추가해야 합니다.

Swift 패키지 매니저를 사용하여 SDK를 추가하는 경우:

  1. File --> Swift Packages --> Add Package Dependency 를 선택합니다.
  2. 나타나는 창에 SDK의 GitHub 주소를 입력합니다. https://github.com/adjust/ios_sdk
  3. 버전 드롭다운 메뉴에서 사용을 원하는 Adjust SDK 버전을 선택합니다. 최신 버전은 배포 페이지에서 확인하실 수 있습니다.

대체 설치 메서드

2. Adjust SDK 연동

Xcode 프로젝트에 Adjust SDK를 추가하고 나면 앱에 연동해야 합니다.

프로젝트 파일에 관련 가져오기 명령어를 추가합니다.

3. iOS 프레임워크 추가

Adjust SDK는 특정 기기 정보 액세스를 위해 프레임워크에 의존합니다. 이 정보 읽기를 활성화하려면 프레임워크를 추가하고 프레임워크를 옵션 으로 표시하시기 바랍니다.

프레임워크설명참고 사항
AdSupport.framework디바이스 IDFA에 대한 액세스와, iOS 14 이하 버전의 기기에서 LAT에 대한 액세스도 활성화합니다.앱이 "아동" 카테고리를 타겟으로 하는 경우 이 프레임워크를 추가하지 않습니다.
AdServices.frameworkASA 어트리뷰션을 취급합니다.
StoreKit.frameworkSKAdNetwork 프레임워크에 대한 액세스를 활성화합니다.Required to allow the Adjust SDK to handle communication with SKAdNetwork on devices running iOS 14 or later.
AppTrackingTransparency.frameworkAdjust SDK가 iOS 14 이상 버전의 기기에서 사용자 ATT 동의 다이얼로그 및 액세스 동의 응답을 래핑하도록 허용하기 위해 필요합니다.앱이 "아동" 카테고리를 타겟으로 하는 경우 이 프레임워크를 추가하지 않습니다.
WebKit.framework애플리케이션의 웹뷰 사용을 활성화합니다.앱이 웹뷰를 사용하는 경우에만 필요합니다.

4. SDK 서명 설정

If you want to use the SDK signature library to secure communications between the Adjust SDK and Adjust's servers, follow the instructions in the SDK signature guide on the Adjust Help Center.

5. (선택 사항) Adjust Web Bridge 설정

앱이 웹뷰를 사용하는 경우 Adjust Web Bridge를 설정해 웹뷰 내 활동을 기록해야 합니다.

앱에 AdjustBridge 연동

Project Navigator:

  1. View Controller의 소스 파일을 엽니다.
  2. 파일 가장 위에 import 명령어를 추가합니다.
  3. AdjustBridge에 대해 웹뷰 델리게이트의 viewDidLoad 또는 viewWillAppear 메서드에서 다음의 콜을 추가합니다.

AdjustBridge를 웹뷰에 연동

웹뷰에서 자바스크립트 브릿지를 사용하려면 브릿지를 구성해야 합니다. 다음 자바스크립트 코드를 추가하여 Adjust iOS 웹브릿지를 초기화합니다:

6. Adjust SDK 초기화

Adjust SDK를 초기화하려면 config 객체를 만들어야 합니다. 이 객체에는 Adjust SDK 행동을 통제하는 구성 옵션이 포함되어 있습니다. 최소 설정을 위한 다음 인수를 전달합니다.

  • appToken: 귀하의 앱 토큰.
  • environment: SDK를 실행할 환경. 이를 ADJEnvironmentSandbox로 설정합니다.

이 config 객체로 Adjust SDK 초기화:

  1. 앱 델리게이트의 didFinishLaunching 또는 didFinishLaunchingWithOptions 메서드의 config 개체를 선언합니다.
  2. ADJLogLevelVerbose(verbose)에 config 개체의 logLevel 속성을 설정합니다. 디바이스 정보를 검색하려면 verbose 로깅을 활성화해야 합니다.
  3. initSdk 메서드에 인수로 config 개체를 전달합니다.

iMessage 앱 설정

앱이 iMessage를 타겟으로 하는 경우 설정해야 하는 추가적인 설정이 몇 가지 있습니다.

  • 소스에서 Adjust SDK를 추가한 경우, iMessage 프로젝트 설정에 ADJUST_IM=1 프리프로세서 매크로를 추가합니다.
  • Adjust SDK를 프레임워크로 추가한 경우, Build Phases 프로젝트 설정에 New Copy Files Phase 를 추가해야 합니다. 프레임워크 폴더에 복사될 AdjustSdkIm.framework를 설정합니다.

세션 기록

Adjust SDK는 iMessage 앱에서 iOS 시스템 알림을 구독하지 않습니다. 앱이 포그라운드에 진입했거나 나간 경우 Adjust SDK에 알리려면 trackSubsessionStarttrackSubsessionEnd 메서드를 콜해야 합니다.

didBecomeActiveWithConversation: 메서드 안의 trackSubsessionStart에 콜을 추가합니다.

willResignActiveWithConversation: 메서드 안의 trackSubsessionEnd에 콜을 추가합니다.

7. Adjust SDK 설정

config 개체와 초기화 로직을 추가하고 나면 Adjust SDK를 설정해 앱의 다양한 부분에 대한 정보를 기록할 수 있습니다. 구성 참조기능 가이드를 확인하여 기록할 항목을 정확히 설정합니다.

8. Adjust SDK 테스트

Adjust SDK를 설정해 앱 정보를 기록할 수 있으므로 이제 테스트할 차례입니다. Adjust는 앱 테스트에 도움이 되는 테스팅 콘솔Device API를 제공합니다.

테스트 가이드를 따라 Adjust가 앱에서 예상값을 수신하는지 확인합니다.

9. 프로덕션을 위한 앱 빌드

테스트를 완료한 후에 프로덕션을 위한 앱을 빌드할 수 있습니다. 이를 위해 config 객체를 업데이트해야 합니다.

다음 값 업데이트:

  • environment: Set this to ADJEnvironmentProduction.
  • logLevel: 로깅 레벨을 선택하거나 config 객체의 allowSuppressLogLevel 인수를 전달해 로깅을 완전히 비활성화합니다.

디버그 빌드 또는 프로덕션 빌드를 만들지 여부에 따라 Xcode 빌드 플래그를 사용해 config를 동적으로 업데이트할 수 있습니다.