Сеансы — iOS SDK

В этом документе представлен общий обзор сеансов в Google Mobile App Analytics и SDK Google Analytics для iOS v2, а также описаны различные методы, доступные для управления сеансами в вашем приложении.

Обзор

Сеанс представляет собой один период взаимодействия пользователя с вашим приложением. Сеансы служат полезными контейнерами измеряемой активности, включая просмотры экрана, события и транзакции электронной торговли.

По умолчанию Google Analytics группирует обращения, полученные в течение 30 минут друг от друга, в один и тот же сеанс. Однако многие разработчики могут захотеть реализовать дополнительный уровень управления сеансом, учитывающий состояние их приложения, например, когда приложение находится в фоновом режиме и как долго.

В оставшейся части этого документа будут описаны методы, доступные для реализации этой логики. Ваши возможности варьируются от полностью автоматизированного управления сессиями, предоставляемого EasyTracker, до создания собственной логики управления сессиями вручную или с использованием сочетания того и другого.

Управление сессиями

В следующем разделе будут описаны доступные вам методы управления сеансами в вашем приложении.

Автоматизированное управление сессиями

Google Analytics SDK для iOS обеспечивает автоматическое управление сеансами, которое может выполнять работу по запуску новых сеансов за вас. Вот обзор того, как работает автоматизированное управление сеансом:

  • Реализация по умолчанию имеет период ожидания сеанса 30 секунд. Вы можете изменить период ожидания, вызвав setSessionTimeout:(NSTimeInterval) :
      [tracker setSessionTimeout:60];
  • Если приложение остается в фоновом режиме дольше, чем время ожидания сеанса, следующее обращение будет частью нового сеанса.

Ручное управление сеансом

Может быть полезно запускать новые сеансы вручную при ключевых событиях жизненного цикла вашего приложения.

Например, вы можете вручную запускать новый сеанс каждый раз, когда пользователь успешно входит в ваше приложение. Поскольку намерение пользователя при использовании приложения могло измениться или это может быть вообще другой пользователь, запуск нового сеанса при входе поможет сохранить данные об использовании отдельно и упростить понимание в ваших отчетах.

Чтобы начать новый сеанс, установите для sessionStart значение YES . Это добавит параметр к следующему отправленному обращению, указывающему, что он должен начать новый сеанс.

В приведенном ниже примере мы предполагаем, что 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.

}