핵심 구현 및 라이프사이클

다음은 iOS 라이브러리를 구현하고 시작, 업그레이드, 세션, 참여 사용자 등의 라이프사이클 지표를 수집하는 데 유용한 정보입니다.

SDK 다운로드

중요

SDK를 사용하려면 iOS 8 이상이 필요합니다.

전제 조건

SDK를 다운로드하기 전에 핵심 구현 및 라이프사이클에서 보고서 세트 생성​의 단계를 완료하여 개발 보고서 세트를 설정하고 미리 채워진 구성 파일 버전을 다운로드합니다.

SDK를 다운로드하려면:

중요

버전 4.21.0부터 SDK는 XCFrameworks를 통해 배포됩니다. 4.21.0 이상을 사용하는 경우 아래 절차를 따르십시오.

SDK 버전 4.21.0에는 Xcode 12.0 이상이 필요하며, 해당되는 경우 Cocoapods 1.10.0 이상이 필요합니다.

  1. [Your_App_Name_]AdobeMobileLibrary-4.*-iOS.zip 파일을 다운로드하여 압축을 푼 후에 AdobeMobileLibrary 디렉터리에 다음 소프트웨어 구성 요소가 있는지 확인합니다.

    • ADBMobile.h - iOS SDK에 사용되는 Objective-C 헤더 파일입니다.

    • ADBMobileConfig.json - 앱에 맞게 사용자 지정된 SDK 구성 파일입니다.

    • AdobeMobile.xcframework - iOS 장치(armv7, armv7s, arm64)와 시뮬레이터(i386, x86_64, arm64)에 대해 각각 하나씩, 2개의 대용량 바이너리가 포함되어 있습니다.

      iOS 앱을 대상으로 할 때 이 XCFramework를 연결해야 합니다.

    • AdobeMobileExtension.xcframework - iOS 장치(armv7, armv7s, arm64)와 시뮬레이터(i386, x86_64, arm64)에 대해 각각 하나씩, 2개의 대용량 바이너리가 포함되어 있습니다.

      iOS 확장을 대상으로 할 때 이 XCFramework를 연결해야 합니다.

    • AdobeMobileWatch.xcframework - watchOS 장치(arm64_32, armv7k)와 시뮬레이터(i386, x86_64, arm64)에 대해 각각 하나씩, 2개의 대용량 바이너리가 포함되어 있습니다.

      이 XCFramework는 Apple Watch(watchOS) 앱을 대상으로 할 때 연결해야 합니다.

    • AdobeMobileTV.xcframework - tvOS 장치(arm64)와 시뮬레이터(x86_64, arm64)에 대해 각각 하나씩, 2개의 대용량 바이너리가 포함되어 있습니다.

      Apple TV(tvOS) 앱을 대상으로 할 때 이 XCFramework를 연결해야 합니다.

중요

4.21.0 이전 버전에서 SDK는 바이너리를 통해 배포됩니다. 4.21.0 이전 버전을 사용하는 경우 아래 절차를 따르십시오.

  1. [Your_App_Name_]AdobeMobileLibrary-4.*-iOS.zip 파일을 다운로드하여 압축을 푼 후에 다음 소프트웨어 구성 요소가 있는지 확인합니다.

    • ADBMobile.h: iOS AppMeasurement용으로 사용되는 Objective-C 헤더 파일입니다.

    • ADBMobileConfig.json: 앱에 맞게 사용자 지정된 SDK 구성 파일입니다.

    • AdobeMobileLibrary.a iOS 장치(armv7, armv7s, arm64)와 시뮬레이터(i386, x86_64)의 라이브러리 빌드가 포함된 비트코드 사용 패트 바이너리입니다.

      iOS 앱이 타겟인 경우 이 패트 바이너리를 연결해야 합니다.

    • AdobeMobileLibrary_Extension.a: iOS 장치(armv7, armv7s, arm64)와 시뮬레이터(i386, x86_64)의 라이브러리 빌드가 포함된 Bitcode 사용 패트 바이너리입니다.

      iOS 확장 프로그램이 타겟인 경우 이 패트 바이너리를 연결해야 합니다.

    • AdobeMobileLibrary_Watch.a: Apple Watch 장치(armv7k)와 시뮬레이터(i386, x86_64)의 라이브러리 빌드가 포함된 Bitcode 사용 패트 바이너리입니다.

      Apple Watch(watchOS 2) 확장 앱이 타겟인 경우 이 패트 바이너리를 연결해야 합니다.

    • AdobeMobileLibrary_TV.a: 새 Apple TV 장치(arm64)와 시뮬레이터(x86_64)의 라이브러리 빌드가 포함된 Bitcode 사용 패트 바이너리입니다.

      Apple TV(tvOS) 앱이 타겟인 경우 이 패트 바이너리를 연결해야 합니다.

중요

Adobe Mobile Services UI 외부에서 SDK를 다운로드하는 경우에는 ADBMobileConfig.json 파일을 수동으로 구성해야 합니다. Analytics 및 Mobile SDK를 처음 사용하는 경우 시작하기 전에를 참조하여 개발 보고서 세트를 설정하고 미리 채워진 구성 파일 버전을 다운로드합니다.

프로젝트에 SDK 및 구성 파일 추가

  1. Xcode IDE를 실행하고 앱을 엽니다.

  2. Project Navigator에서 AdobeMobileLibrary 폴더를 드래그하여 프로젝트 아래에 놓습니다.

  3. 다음을 확인합니다.

    • 필요한 경우 항목 복사 확인란이 선택되어 있습니다.
    • 그룹 생성​이 선택되어 있습니다.
    • 대상에 추가 섹션의 확인란이 선택되어 있지 않습니다.

  4. 마침을 클릭합니다.

  5. Project Navigator​에서 ADBMobileConfig.json​를 선택합니다.

  6. File Inspector​에서 Adobe SDK를 사용할 프로젝트의 타겟에 JSON 파일을 추가합니다.

  7. Project Navigator​에서 다음 단계를 완료합니다.

    1. 앱을 클릭합니다.
    2. 일반 탭에서 타겟을 선택하고 연결된 프레임워크 및 라이브러리​섹션에서 필요한 프레임워크 및 라이브러리를 연결합니다.
    • iOS 앱 타겟

      • SystemConfiguration.framework
      • WebKit.framework
      • libsqlite3.0.tbd
      • AdobeMobileLibrary.a
      • CoreLocation.framework(선택 사항이지만 지역 추적 기능에 필요함)
    • iOS 확장 프로그램 타겟

      • SystemConfiguration.framework
      • libsqlite3.0.tbd
      • AdobeMobileLibrary\_Extension.a
    • Apple Watch(watchOS 2) 타겟

      • libsqlite3.0.tbd
      • AdobeMobileLibrary\_Watch.a
    • Apple TV(tvOS) 타겟

      • SystemConfiguration.framework
      • libsqlite3.0.tbd
      • AdobeMobileLibrary\_TV.a
    주의

    두 개 이상의 AdobeMobileLibrary*.a 파일을 동일한 타겟에 연결하면 예기치 않은 동작이 발생하거나 빌드할 수 없게 됩니다.

    중요

    버전 4.21.0 이상을 사용하는 경우 Adobe XCFrameworks가 포함되지 않아야 합니다.

  8. 오류 없이 앱이 빌드되는지 확인합니다.

라이프사이클 지표 구현

중요

iOS는 collectlifecycledata를 호출하거나 호출하지 않고 라이프사이클 정보를 전송하며 collectlifecycledata는 애플리케이션의 실행 시퀀스에서 이전의 라이프사이클을 시작하는 유일한 방법입니다.

라이프사이클을 사용하면 앱이 시작될 때마다 시작, 업그레이드, 세션, 참여 사용자 및 기타 라이프사이클 지표를 측정하기 위해 한 번의 히트가 전송됩니다.

application:didFinishLaunchingWithOptionscollectLifecycleData/collectLifecycleDataWithAdditionalData 호출을 추가합니다.

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
 [ADBMobile collectLifecycleData];
    return YES;
}

라이프사이클 호출로 추가 데이터 포함

라이프사이클 지표 호출을 통해 추가 데이터를 포함하려면 collectLifecycleDataWithAdditionalData를 사용하십시오.

중요

collectLifecycleDataWithAdditionalData:를 통해 SDK에 전달되는 모든 데이터는 SDK에 의해 NSUserDefaults에서 유지됩니다. SDK는 NSDictionary 또는 NSString 유형이 아닌 NSNumber 매개 변수에서 값을 제거합니다.

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    NSMutableDictionary *contextData = [NSMutableDictionary dictionary];
    [contextData setObject:@"Game" forKey:@"myapp.category"];
    [ADBMobile collectLifecycleDataWithAdditionalData:contextData];
    return YES;
}

collectLifecycleDataWithAdditionalData와 함께 전송되는 추가 컨텍스트 데이터 값은 Adobe Mobile Services의 사용자 지정 변수에 매핑해야 합니다.

다른 라이프사이클 지표는 자동으로 수집됩니다. 자세한 내용은 라이프사이클 지표를 참조하십시오.

다음 단계

다음 작업을 완료하십시오.

이 페이지에서는