Appearance
Fragments
TrainingKit Android provides two fragment entry points.
GoFragment
- Use for classic workouts.
- Constructor pattern:
kotlin
GoFragment.newInstance(workoutContent, workoutConfig, jwtToken)WorkoutVideoFragment
- Use for streaming video workouts.
- Constructor pattern:
kotlin
WorkoutVideoFragment.newInstance(workoutContent, workoutConfig, jwtToken)Shared inputs
workoutContent: GraphQL session payload.workoutConfig: JSON customization and behavior options.jwtToken: A signed JWT issued by your backend.
Completion callbacks
Both fragment types emit the same workout lifecycle, but through their respective host interfaces.
| Lifecycle signal | GoFragment classic callback | WorkoutVideoFragment video callback | Purpose |
|---|---|---|---|
| Save | saveWorkout(state: SaveWorkoutState) | saveWorkout(saveState: SaveWorkoutState): Promise<*, *, *> | Persist completed workout state. |
| Quit / close | closeGoMode(state: SaveWorkoutState?) | Host close handling / goToNextScreen() after the video flow | Restore host navigation when the workout is left or finished. |
| Event | trackEvent(name: Tracking.Event, properties: Map<Tracking.Property, String>?) | trackEvent(data: TrackingData) | Forward TrainingKit analytics metadata. |
Register or implement this handling before the fragment is displayed so completion and tracking signals are not lost.
