public interface SessionClient
For example, when MobileAnalyticsManager is first instantiated, it creates Session 1. As the user transitions from activity to activity, the old activity will pause the current session, and the new activity will immediately resume the current session. In this case, Session 1 remains active and accumulates session time. The user continues to use the App for a total of 3 minutes, at which point, the user receives a phone call. When transitioning to the phone call, the current activity will pause the session and then transition to the phone app. In this case Session 1 remains paused while the phone call is in progress and session time does not accumulate. After completing the phone call a few minutes later, the user returns to the App and the activity will resume Session 1. Since enough time has elapsed since resuming Session 1, Session 1 will be ended with a play time of 3 minutes. Session 2 will then be immediately created and started.
In order for MobileAnalyticsManager to track sessions, you must call the pauseSession()
and resumeSession()
methods in each activity of your Android app.
Alternatively, if you have a base activity that all other activities inherit from, these calls only need to
be made from the base activity.
public void onPause() { super.onPause(); //Notify MobileAnalyticsManager that a session pause happened in this Android activity. //Be sure to include this in every activity's onPause. this.mobileAnalyticsManager.getSessionClient().pauseSession(); } public void onResume() { super.onResume(); //Notify MobileAnalyticsManager that a session resume happened in this Android activity. //Be sure to include this in every activity's onResume. this.mobileAnalyticsManager.getSessionClient().resumeSession(); }
Modifier and Type | Method and Description |
---|---|
void |
pauseSession()
Pauses the current session.
|
void |
resumeSession()
Resumes the current session.
|
Copyright © 2010 Amazon Web Services, Inc. All Rights Reserved.