세션 - iOS SDK

이 문서에서는 Google 모바일 앱 애널리틱스와 iOS용 Google 애널리틱스 SDK v2의 세션에 대한 간략한 개요를 제공하며, 앱에서 세션을 관리하는 데 사용할 수 있는 다양한 방법을 설명합니다.

개요

세션은 사용자와 앱의 단일 상호작용을 나타냅니다. 세션은 화면 조회수, 이벤트, 전자상거래를 비롯하여 측정된 활동의 유용한 컨테이너 역할을 합니다.

기본적으로 Google 애널리틱스에서는 30분 이내에 수신된 조회를 동일한 세션으로 그룹화합니다. 그러나 많은 개발자는 앱이 백그라운드에 있는 경우와 지속 시간과 같이 앱의 상태를 고려하여 세션 관리의 레이어를 추가로 구현하려고 할 수 있습니다.

이 문서의 나머지 부분에서는 이 로직을 구현하는 데 사용할 수 있는 메서드를 설명합니다. 옵션은 EasyTracker에서 제공하는 완전히 자동화된 세션 관리에서 수동으로 자체 세션 관리 로직을 빌드하거나 두 가지를 혼합하여 사용하는 것까지 다양합니다.

세션 관리

다음 섹션에서는 앱에서 세션을 관리하는 데 사용할 수 있는 방법을 설명합니다.

자동 세션 관리

iOS용 Google 애널리틱스 SDK는 새 세션을 시작하는 작업을 처리할 수 있는 자동 세션 관리를 제공합니다. 다음은 자동 세션 관리의 작동 방식에 관한 개요입니다.

  • 기본 구현에서는 세션 제한 시간이 30초입니다. setSessionTimeout:(NSTimeInterval)를 호출하여 제한 시간을 변경할 수 있습니다.
      [tracker setSessionTimeout:60];
  • 앱이 세션 제한 시간보다 오래 백그라운드에 있으면 다음 조회가 새 세션의 일부가 됩니다.

수동 세션 관리

앱 수명 주기의 주요 이벤트에서 새 세션을 수동으로 시작하는 것이 유용할 수 있습니다.

예를 들어 사용자가 앱에 성공적으로 로그인할 때마다 새 세션을 수동으로 시작하려고 할 수 있습니다. 앱을 사용하는 사용자의 의도가 변경되었거나 다른 사용자 알고리즘일 수 있으므로 로그인 시 새 세션을 시작하면 사용량 데이터를 분리하여 이해하기 쉽게 만들고 보고서에서 더 쉽게 이해할 수 있습니다.

새 세션을 시작하려면 sessionStartYES로 설정합니다. 이렇게 하면 전송된 다음 조회에 새 세션을 시작해야 함을 나타내는 매개변수가 추가됩니다.

아래 예에서는 사용자가 앱에 정상적으로 로그인할 때마다 onSignIn가 호출된다고 가정합니다.

// Called after a user successfully signs in to your app.
- (void)onSignIn {
  ... // The rest of your onSignIn code.
  tracker.sessionStart = YES;
  [tracker sendEventWithCategory:@"app_flow"
                      withAction:@"sign_in"
                       withLabel:nil
                       withValue:nil]; // First activity of new session.

}