다음은 iOS 라이브러리를 구현하고 시작, 업그레이드, 세션, 참여 사용자 등의 라이프사이클 지표를 수집하는 데 유용한 정보입니다.
SDK를 사용하려면 iOS 8 이상이 필요합니다.
전제 조건
SDK를 다운로드하기 전에 핵심 구현 및 라이프사이클에서 보고서 세트 생성의 단계를 완료하여 개발 보고서 세트를 설정하고 미리 채워진 구성 파일 버전을 다운로드합니다.
SDK를 다운로드하려면:
버전 4.21.0부터 SDK는 XCFrameworks를 통해 배포됩니다. 4.21.0 이상을 사용하는 경우 아래 절차를 따르십시오.
SDK 버전 4.21.0에는 Xcode 12.0 이상이 필요하며, 해당되는 경우 Cocoapods 1.10.0 이상이 필요합니다.
[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 이전 버전을 사용하는 경우 아래 절차를 따르십시오.
[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를 처음 사용하는 경우 시작하기 전에를 참조하여 개발 보고서 세트를 설정하고 미리 채워진 구성 파일 버전을 다운로드합니다.
Xcode IDE를 실행하고 앱을 엽니다.
Project Navigator에서 AdobeMobileLibrary
폴더를 드래그하여 프로젝트 아래에 놓습니다.
다음을 확인합니다.
마침을 클릭합니다.
Project Navigator에서 ADBMobileConfig.json
를 선택합니다.
File Inspector에서 Adobe SDK를 사용할 프로젝트의 타겟에 JSON 파일을 추가합니다.
Project Navigator에서 다음 단계를 완료합니다.
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가 포함되지 않아야 합니다.
오류 없이 앱이 빌드되는지 확인합니다.
iOS는 collectlifecycledata
를 호출하거나 호출하지 않고 라이프사이클 정보를 전송하며 collectlifecycledata
는 애플리케이션의 실행 시퀀스에서 이전의 라이프사이클을 시작하는 유일한 방법입니다.
라이프사이클을 사용하면 앱이 시작될 때마다 시작, 업그레이드, 세션, 참여 사용자 및 기타 라이프사이클 지표를 측정하기 위해 한 번의 히트가 전송됩니다.
application:didFinishLaunchingWithOptions
에 collectLifecycleData
/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의 사용자 지정 변수에 매핑해야 합니다.
다른 라이프사이클 지표는 자동으로 수집됩니다. 자세한 내용은 라이프사이클 지표를 참조하십시오.
다음 작업을 완료하십시오.