Adobe Analytics 추가

이 단원에서는 앱에서 Adobe Analytics 추적을 활성화합니다.

Adobe Analytics는 고객 인텔리전스로 고객을 사람으로 이해하고 고객 인텔리전스로 비즈니스를 이끌어 나갈 수 있는 업계 선도적인 솔루션입니다.

확장 추가Mobile SDK 설치 단원에서 Adobe Analytics 확장을 태그 속성에 추가하고 샘플 애플리케이션으로 가져왔습니다. 이제 앱에서 상태와 작업을 추적하기 위해 코드를 추가하면 됩니다.

노트

Adobe Experience Platform Launch은 데이터 수집 기술 세트로 Adobe Experience Platform에 통합되고 있습니다. 인터페이스에서 이 컨텐츠를 사용하는 동안 알고 있어야 하는 몇 가지 용어 변경 사항이 롤아웃되었습니다.

  • platform launch(클라이언트측)는 이제 tags​입니다.
  • platform launch 서버 측은 이제 event forwarding​입니다.
  • 에지 구성은 이제 datastreams

학습 목표

이 단원을 마치면 다음을 수행할 수 있습니다.

  • 라이프사이클 지표가 Adobe Analytics로 전송되고 있음을 확인
  • 추가적인 데이터를 사용하여 앱에서 상태를 추적하는 코드 추가
  • 추가적인 데이터를 사용하여 앱에서 작업을 추적하는 코드 추가

태그의 Analytics에 대해 구현할 수 있는 여러 가지 사항이 있습니다. 이 단원은 완벽하지는 않지만, 사용자 앱에서 구현에 필요한 주요 기술에 대한 구체적인 개요를 제공합니다.

전제 조건

태그 구성 섹션의 학습 내용을 이미 완료했어야 합니다. 해당 섹션에서는 Analytics 확장을 추가하고 추적 서버 및 보고서 세트 ID를 구성했습니다.

라이프사이클 지표 및 Adobe Analytics

라이프사이클 지표는 Experience Platform Mobile SDK를 사용하여 앱에서 쉽게 활성화할 수 있는 환경 기반 지표 및 차원입니다. 사실, 이 지표는 이미 추가했습니다!

속성에 Core 확장을 추가하고 인터페이스에 제공된 모바일 설치 지침을 따랐을 때 라이프사이클 지표가 이미 활성화되었습니다. 앱 버전, 참여 사용자 수, OS 버전, 시간 분할, 마지막 사용 이후 일 수 등과 같은 환경 및 앱 관련 지표를 비롯한 이러한 지표 및 차원은 앱의 분석에 매우 유용할 수 있습니다. 특히 모든 보고서에 적용할 Analytics 세그먼트를 만들 때 유용합니다. 전체 지표 목록은 설명서에서 나와 있습니다.

Analytics 라이프사이클 히트 보기

라이프사이클 히트는 디버깅 프로그램/패킷 스니퍼에서 볼 수 있지만 Xcode 디버깅 콘솔에서도 간단히 볼 수 있습니다.

  1. 시뮬레이터를 시작하도록 Xcode에서 프로젝트를 빌드하고 실행합니다.

  2. Xcode 디버깅 콘솔에서 lifecycle을 맨 아래의 필터에 입력하여 표시되는 내용을 제한한 다음, 항목의 맨 아래로 스크롤합니다.

  3. Analytics request was sent with body 섹션에 주목합니다.

  4. 라이프사이클 지표에는 AppID, CarrierName, DayOfWeek, DaysSinceFirstUse 및 설명서에 나열된 기타 지표/차원과 같은 것들이 포함됩니다.

    라이프사이클 히트 디버깅

ACPCore 라이브러리 가져오기

다음 연습에서는 API를 사용하여 앱에서 상태("trackState")와 작업("trackAction")을 추적합니다. 이러한 API를 사용하려면 API가 포함된 라이브러리를 가져와야 합니다. 새로운 Experience Cloud Platform Mobile SDK에서는 trackState 및 trackAction API가 Analytics 라이브러리에서 Core 라이브러리로 이동되었으므로, Adobe Analytics 추적 이외의 목적으로 이러한 API를 사용할 수 있습니다.

이 자습서에서는 한 상태만 추적하지만 실제 앱에서는 여러 상태를 추적할 수 있습니다.

ACPCore 라이브러리를 가져오려면

  1. Xcode에서 BookingViewController.m 파일을 엽니다.

  2. 파일의 맨 위에(일반적으로 다른 가져오기 구문과 함께) #import "ACPCore.h"를 추가합니다.

  3. 저장합니다.

  4. 이제 이 파일에서 trackState 또는 trackAction API를 사용할 준비가 되었습니다.

상태 추적

앱에서 사용자를 위해 제공하는 다양한 컨텐츠 화면이 있을 수 있습니다. 이러한 화면은 웹 사이트의 페이지와 같습니다. Adobe Analytics에서는 이러한 "페이지 보기 히트 수"를 보내고 웹 속성용으로 익숙한 동일한 보고서에서 이 히트를 볼 수 있는 메서드를 제공합니다. 이 메서드를 "trackState"라고 합니다.

이 자습서에서는 trackState 호출용 코드를 앱의 한 화면(페이지)에만 삽입하게 됩니다. 실제로는 앱의 다른 모든 화면/상태에서 이 메서드를 복제하게 됩니다. 또한 히트와 함께 데이터(키/값 쌍)를 보내는 몇 가지 방법도 살펴보게 됩니다.

다음은 이 자습서나 보유한 앱에서 복사하여 붙여 넣을 수 있는 구문과 설명서의 코드 예입니다.

구문:

+ (void) trackState: (nullable NSString*) state data: (nullable NSDictionary*) data;

예:

[ACPCore trackState:@"state name" data:@{@"key":@"value"}];

데이터 없이 상태 추적

  1. Xcode에서 샘플 앱을 연 채 BookingViewController.m으로 이동한 다음, viewDidLoad() 함수에서 trackState 메서드 호출을 추가합니다.

  2. state name을 "홈 화면"으로 설정합니다.

  3. 데이터를 더 추가하는 대신 메서드 호출에서 자리 표시자로서 null을 추가합니다.

  4. 또는 다음을 복사하여 붙여 넣습니다.

    [ACPCore trackState:@"Home Screen" data:nil];
    

    기본 trackState 호출

trackState의 유효성을 검사하려면

  1. 프로젝트를 저장, 빌드 및 실행합니다.

  2. 시뮬레이터가 실행되어 앱의 홈 화면이 열리면 Xcode 콘솔을 봅니다.

  3. 콘솔을 "홈"을 사용하는 항목으로 필터링하고 Analytics request was sent with body을 보여주는 맨 아래 항목을 봅니다.

  4. pageName 변수가 Home Screen으로 설정되어 있고 다른 사용자 지정 데이터 쌍이 없다는 점에 주목합니다. 기술적으로 "페이지 이름"이 아닌 "상태 이름"을 설정하고 있지만 웹 사이트 구현과 일관되도록 하기 위해 사용되는 매개 변수 이름은 pageName입니다.

    기본 trackState 결과

데이터를 사용하여 상태 추적

  1. BookingViewController.m으로 돌아가서 마지막 연습에서 기본(추가된 데이터 없음) trackState 호출을 viewDidLoad() 함수에서 주석 처리(또는 삭제)합니다.

  2. 이번에는 데이터를 사용하고 키로 key1을 사용하고 값으로 value1을 사용하여 새 trackState 메서드 호출을 추가합니다.

  3. state name을 "홈 화면"으로 둡니다.

  4. 또는 다음을 복사하여 붙여 넣습니다.

    [ACPCore trackState:@"Home Screen" data:@{@"key1":@"value1"}];
    

    기본 trackState 호출

데이터를 사용하여 trackState의 유효성을 검사하려면

  1. 다시 프로젝트를 저장, 빌드 및 실행합니다.

  2. 시뮬레이터가 실행되어 앱의 홈 화면이 열리면 Xcode 콘솔을 봅니다.

  3. 필터를 "홈"으로 두고 Analytics request was sent with body을 보여주는 맨 아래 항목을 봅니다.

  4. 이제 설정되는 pageName 외에 히트에서 전송된 키/값 쌍도 있습니다.

    기본 trackState 결과

노트

Analytics의 "prop 및 eVar"에 익숙한 경우 이러한 변수 이름이 SDK에 없는 것을 볼 수 있습니다. SDK에서 오는 모든 키/값 데이터는 contextData 변수로서 전송되며, 따라서 이 데이터는 Analytics UI의 처리 규칙을 사용하여 prop 또는 eVar(또는 기타 변수)에 매핑되어야 합니다.

추가적인 데이터 전송 옵션

이전 두 연습에서는 추가적인 데이터가 있는 요청과 없는 요청, 이렇게 두 개의 요청을 수행했습니다. 그러나 화면 또는 상태 로드와 함께 여러 데이터 포인트를 Analytics에 보내려면 어떻게 해야 합니까? 아래에 두 가지 옵션이 있습니다.

옵션 1: 여러 키/값 쌍

trackState 호출에서는 데이터 세트에서 쉼표로 구분하여 여러 키/값 쌍을 전송하는 옵션이 있습니다. 예:

[ACPCore trackState:@"Home Screen" data:@{@"key1":@"value1",@"key2":@"value2",@"key3":@"value3"}];

옵션 2: 사전 개체

코드에서 사전을 정의한 다음 trackState를 사용하여 사전을 전송할 수도 있습니다. 물론 코드에서 일부 사전 개체를 이미 정의했으며 이 개체를 Analytics에 전송하려는 경우 이것이 완벽한 옵션이 될 수 있습니다. 예:

NSDictionary *theStuff = @{@"key1": @"value1",@"key2": @"value2"};
[ACPCore trackState:@"Home Screen" data:theStuff];

추가 사항
계속해서 코드에서 이 두 옵션을 시도해 보고 Xcode 디버깅 콘솔에서 결과를 확인하십시오. 전과 동일한 필터를 사용하고 결과를 확인하여 변수 및 값이 수신되는지 확인할 수 있습니다.

작업 추적

웹 사이트에서 페이지를 로드하지 않는 작업을 추적하는 것과 마찬가지로 사용자가 앱에서 수행하는 작업(예: 다른 화면을 로드하지 않는 항목 클릭)을 추적하려는 경우가 많습니다. 이것은 이 메서드가 trackAction으로 불린다는 점을 제외하면 위에서 사용한 trackState와 매우 유사하게 처리됩니다.

다음은 이 자습서나 보유한 앱에서 복사하여 붙여 넣을 수 있는 구문과 설명서의 코드 예입니다.

구문:

+ (void) trackAction: (nullable NSString*) action data: (nullable NSDictionary*) data;

예:

[ACPCore trackAction:@"action name" data:@{@"key":@"value"}];

'정차 안 함' 확인란과의 상호 작용 추적

이 샘플 버스 예약 앱에는 사용자가 검색 결과를 옵션으로 제한할지 여부를 결정할 수 있도록 해주는 확인란이 있습니다. Adobe Analytics에서 해당 확인란과의 상호 작용을 추적해 보겠습니다.

NonStop 확인란

이 확인란은 샘플 프로젝트의 BookingViewController.m 파일에서 제어됩니다. 이 연습에서는 사람들이 확인란을 선택하거나 선택 취소할 때마다 trackAction 히트가 전송됩니다.

trackAction 코드 설정

  1. Xcode에서 샘플 프로젝트를 연 채 BookingViewController.m으로 이동하여 "nonStopButtonToggled" 함수를 찾습니다.

  2. if 문에서, 확인란이 이미 선택되어 있다면 첫 번째 섹션에서 확인란의 선택을 취소합니다. 이 시나리오에서는 다음 코드를 사용하여 "off" 값이 있는 히트를 전송하려고 합니다.

    [ACPCore trackAction:@"NonStop Button Interaction" data:@{@"NonStop":@"off"}];
    
  3. 다음 섹션("else" 섹션)에서, 확인란이 아직 선택되어 있지 않으면 확인란이 선택됩니다. 이 시나리오에서는 다음 코드를 사용하여 "on" 값이 있는 히트를 전송하려고 합니다.

    [ACPCore trackAction:@"NonStop Button Interaction" data:@{@"NonStop":@"on"}];
    

코드의 다른 사용자 지정 사항에 주목하십시오.

  • action name을 "NonStop Button Interaction"으로 설정하고 있습니다. 이 값은 요청의 "action" 매개 변수와 Adobe Analytics의 사용자 지정 링크 보고서/차원을 채우게 됩니다.
  • 사용 중인 key의 이름은 "NonStop"입니다. 이 이름은 prop 또는 eVar에 매핑할 수 있도록 Analytics Admin Console의 처리 규칙에서 찾을 수 있는 키 이름입니다.

이제 함수 모습은 다음과 같습니다.

NonStop 확인란

trackAction 코드의 유효성을 검사하려면

  1. 코드를 추가한 후 프로젝트를 저장하고 실행 및 빌드합니다.

  2. 쓰레기통 아이콘을 클릭하여 콘솔을 지웁니다.

  3. 시뮬레이터에서 확인란을 선택하여 콘솔의 두 요청이 나타나는 것을 확인합니다. 마지막 요청은 방금 추가한 코드에서 Adobe Analytics에 데이터를 전송하는 것입니다.

  4. 작업과 pev2 매개 변수가 모두 인코딩된 공백이 있는 "NonStop Button Interaction"으로 설정되어 있습니다.

  5. NonStop=on 키/값 쌍이 있고 이 쌍은 처리 규칙에서 prop/eVar에 할당할 수 있다는 점에 주목합니다.

  6. trackAction에 의해 트리거된 "사용자 지정 링크" 히트임을 보여주는 "pe=lnk_o" 키/값에 주목합니다.

    디버거의 trackAction 결과

잘 했습니다. Analytics 단원을 완료했습니다. 물론 Adobe Analytics 구현을 향상시키기 위해 할 수 있는 다른 많은 작업이 있지만 이 단원이 나머지 요구 사항을 해결하는 핵심 기술을 제공했길 바랍니다.

trackState 및 trackAction의 추가적인 이점

이러한 마지막 연습에서는 trackState 및 trackAction API를 사용하여 앱의 데이터를 Adobe Analytics에 전송할 수 있었습니다. Experience Platform Mobile SDK는 태그에서 시작되므로 방금 추가한 코드를 사용하여 데이터 수집 인터페이스에서 수행할 수 있는 작업이 훨씬 더 많습니다.

태그에서는 trackState 및 trackAction API에 의해 트리거되는 규칙을 만들어, 다른 Adobe 솔루션 또는 외부 파트너에 요청하는 등의 추가적인 작업을 수행하도록 할 수 있습니다.

다음 "Adobe Audience Manager 추가" >

이 페이지에서는