API Reference
Overview
This API Reference provides detailed information on all SDK methods and interfaces. The methods are organized by Core SDK, Event Delegate, and Event Interface.
Core SDK
The MaestroSDK object provides the fundamental methods for initializing and configuring the Maestro Android SDK.
| Property/Method | Description |
|---|---|
| customExceptionHandler | Custom error handler for SDK-reported errors |
| breadcrumbHandler | Custom breadcrumb handler for SDK events |
| sdkInfo | SDK debug information including version |
| configure() | Initializes a new SDK instance |
Data Classes
Core data classes used for SDK configuration and event data.
| Class | Description |
|---|---|
| MaestroSDKParameters | Configuration parameters for SDK initialization |
| MaestroSDKMetadata | Platform metadata for SDK configuration |
| MaestroEventData | Event data for live sports and broadcasts |
SDK Instance
The MaestroSDKInstance class represents a single initialized Maestro SDK session.
| Method | Description |
|---|---|
| setDataToPanel() | Set custom data to a panel - mostly for debugging/testing purposes |
| onEventDataUpdated() | Notifies SDK about new event state |
| updateConfig() | Updates user-specific SDK configuration |
| onPlayerTimecodeUpdated() | Notifies SDK of play-head time-code updates |
| detach() | Detaches SDK and stops all work |
Event Delegate
The MaestroEventDelegate interface defines methods for bi-directional communication between the SDK and your app.
| Method | Description |
|---|---|
| keyPlaysData() | Flow of key plays data managed by the client app |
| authData() | Flow of authentication data to be used by the SDK |
| playClip() | Notifies app that a key plays clip should be played |
| onKeyPlaysRefreshNeeded() | Notifies app to reload key plays data |
| shouldShowPanel() | Notifies app that the panel should be displayed |
| shouldHidePanel() | Notifies app that the panel should be dismissed |
| trackImpression() | Notifies app of user impressions for analytics |
| trackAction() | Notifies app of user actions for analytics |
| onLoginClicked() | Notifies app that the login card was clicked |
| onPanelSelected() | Notifies app that a panel was selected |
Data Classes
Data classes used by the Event Delegate for authentication, data loading, and overlay events.
| Class | Description |
|---|---|
| MaestroAuthData | Authentication data for SDK (swid and jwtToken) |
| MaestroLoadableResult | Sealed interface for async loading states (Success, Error, Loading) |
| MaestroOverlayEvent | Sealed interface for overlay events (BetWon, Fantasy) |
Event Interface
The MaestroEventInterface provides methods for letting your app notify the SDK of certain events and control UI functionalities.
Playback Controls
Methods for managing clip playback state.
| Method | Description |
|---|---|
| didStartPlayingClip() | Notifies SDK that a clip started playing |
| didStopPlayingClip() | Notifies SDK that a clip stopped playing |
| clipDidFailToPlay() | Notifies SDK that a clip failed to play |
| didUpdatePlaybackProgressOfClip() | Notifies SDK of clip playback progress |
Panel Management
Methods for managing panel visibility.
| Method | Description |
|---|---|
| didShowPanel() | Notifies SDK that the panel was displayed |
| didHidePanel() | Notifies SDK that the panel was hidden |
Focus Management
Methods for managing focus within the panel.
| Method | Description |
|---|---|
| onKeyPlayFocusChanged() | Notifies SDK that a key play needs to gain focus |