セッション - iOS SDK

このドキュメントでは、Google モバイルアプリ アナリティクスと iOS 向け Google アナリティクス SDK v2 のセッションの概要と、アプリでのセッションの管理に使用できるさまざまな方法について説明します。

概要

セッションとは、アプリでのユーザー インタラクションの一期間を表します。セッションは測定されたアクティビティのコンテナとして機能し、スクリーン ビュー、イベント、e コマース トランザクションなどが含まれます。

デフォルトでは、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.

}