Skip to content

Configuration

This page documents the runtime configuration APIs and asset-related helpers.

DocC symbol source is available at:

https://github.com/fysiki/workoutkit-ios-sdk/blob/main/documentation/FZWorkoutKit.doccarchive.zip

Launch configuration dictionary

GoModeController and GoVideoController accept a configuration dictionary at initialization.

Typical text keys include:

  • startWorkoutCTA
  • endedWorkoutTitle
  • saveWorkoutCTA

Voice prompt keys available in DocC tutorial material include:

  • speechOverviewPromptTitle
  • speechOverviewPromptHint
  • speechOverviewTurnOnCTA
  • speechOverviewTurnOffCTA
  • speechConfirmationPromptTitle
  • speechConfirmationPromptHint
  • speechConfirmationKeepCTA
  • speechConfirmationTurnOffCTA

WorkoutKitConfig

WorkoutKitConfig is a persistent key-value storage interface used by the SDK across launches.

Getter APIs:

MethodPurpose
bool(forKey:)Reads a boolean setting.
integer(forKey:)Reads an integer setting.
float(forKey:)Reads a float setting.
double(forKey:)Reads a double setting.
string(forKey:)Reads a string setting.
object(forKey:)Reads a generic object setting.

Mutation APIs:

MethodPurpose
set(_:forKey:)Sets supported value types for a key.
reset()Resets stored defaults to SDK baseline.
deviceId()Returns stable WorkoutKit device identifier.

deviceId() returns the SDK-generated identifier used for server response authentication by the SDK. This identifier is random, specific to the installation, and remains valid for the duration of the app's installation. If the application is reset, reinstalled, or loses its local storage, a new identifier can be generated.

From a privacy perspective, this identifier should be treated as a technical launch-binding identifier, not as a business identifier for user profiling across apps or services.

Documented WorkoutKitConfig.Setting keys include audio coach toggles and media behavior keys such as audioCoachAdvices, audioCoachInstructions, audioCoachMotivation, audioDuckOthers, voiceIdentifier, subtitles, vibrate, and music style keys.

AssetManager

AssetManager handles regular-workout assets.

MethodPurpose
init(storeOffline:)Creates manager with offline storage behavior.
download(data:token:identifier:)Downloads assets for a regular workout payload.
clearCache()Clears cached asset data.

These managers cache media resources such as audio and video files. They do not make the GraphQL workout session payload reusable across different end users.

StreamManager

StreamManager handles streaming asset download flows.

High-signal APIs exposed in DocC include:

  • downloadStream(_:metadata:identifier:bitrate:useCellular:)
  • downloadStream(_:title:subtitle:assetArtworkData:identifier:bitrate:useCellular:hasVariants:)
  • shared singleton accessor