このドキュメントでは、Google モバイルアプリ アナリティクスと Android 向け Google アナリティクス SDK v2 のセッションの概要と、アプリでのセッションの管理に使用できるさまざまな方法について説明します。
概要
セッションとは、アプリでのユーザー インタラクションの一期間を表します。セッションは測定されたアクティビティのコンテナとして機能し、スクリーン ビュー、イベント、e コマース トランザクションなどが含まれます。
デフォルトでは、30 分以内に受信したヒットが同じセッションにグループ化されます。ただし、多くのデベロッパーは、アプリがバックグラウンドで実行されている時間やその時間など、アプリの状態を考慮したセッション管理の追加レイヤを実装したい場合があります。
このドキュメントの残りの部分では、このロジックの実装に使用できるメソッドについて説明します。EasyTracker が提供する完全に自動化されたセッション管理から、独自のセッション管理ロジックを手動で構築すること、またはその両方を使用する方法まで、幅広い選択肢があります。
セッションの管理
次のセクションでは、アプリのセッションの管理に使用できるメソッドについて説明します。
EasyTracker を使用した自動セッション管理
EasyTracker は、新しいセッションを開始する作業を処理できる自動セッション管理を提供します。自動セッション管理の仕組みの概要は次のとおりです。
- デフォルトの実装では、セッション タイムアウト時間は 30 秒です。タイムアウト時間を変更するには、
analytics.xml
ファイルのga_sessionTimeout
パラメータを変更します。<-- Set session time out to 60 seconds -- > <integer name="ga_sessionTimeout">60</integer>
- アプリがセッション タイムアウト時間よりも長くバックグラウンドに留まると、EasyTracker は新しいセッションの必要性を報告し、次のヒットは新しいセッションの一部になります。
手動セッション管理
EasyTracker の自動セッション管理を使用している場合でも、アプリのライフサイクルの重要なイベントで新しいセッションを手動で開始すると役に立つことがあります。
たとえば、ユーザーがアプリに成功するたびに新しいセッションを手動で開始することをおすすめします。アプリの使用に関するユーザーの意図が変わったり、別のユーザー アルゴリズムだったりする可能性があるため、ログイン時に新しいセッションを開始すると、使用状況データを別々に保持し、レポートで理解しやすくなります。
新しいセッションを開始するには、setStartSession(true)
を呼び出します。これにより、次に送信されたヒットに、新しいセッションを開始するよう指示するパラメータが追加されます。
次の例では、ユーザーがアプリへのログインに成功するたびに onSignIn()
が呼び出されると仮定しています。
// Called after a user successfully signs in to your app. private void onSignIn() { ... // The rest of your onSignIn() code. myTracker.setStartSession(true); // Where myTracker is an instance of Tracker. myTracker.sendEvent("app_flow", "sign_in", "", null); // First activity of new session. }