The FireworkSdk.startPlayer() method launches a fullscreen video player in a separate activity. This is useful when you want to play videos directly without embedding a FwVideoFeedView or FwStoryblock in your layout.
Overview
Unlike FwVideoFeedView and FwStoryBlockView, which are embedded views, FireworkSdk.startPlayer() launches a standalone player activity that takes over the entire screen. This approach is ideal for:
Opening specific videos from deep links
Playing videos from custom UI elements (buttons, banners, etc.)
val viewOptions = ViewOptions.Builder()
.baseOption(
BaseOption.Builder()
.feedResource(FeedResource.Discovery)
.build()
)
.playerOption(
PlayerOption.Builder()
.showShareButton(true)
.enablePipMode(true)
.build()
)
.build()
val result = FireworkSdk.startPlayer(viewOptions)
when (result) {
is PlayerLaunchResult.Success -> {
// Player launched successfully
}
is PlayerLaunchResult.Failure -> {
// Handle launch failure
Log.e("Player", "Failed to launch player: ${result.message}")
}
}
val viewOptions = viewOptions {
baseOptions {
feedResource(FeedResource.Discovery)
}
playerOptions {
showShareButton(true)
enablePipMode(true)
autoPlayOnComplete(true)
}
}
val result = FireworkSdk.startPlayer(viewOptions)
sealed class PlayerLaunchResult {
object Success : PlayerLaunchResult()
class Failure(val message: String) : PlayerLaunchResult()
}
when (val result = FireworkSdk.startPlayer(viewOptions, url)) {
is PlayerLaunchResult.Success -> {
// Player launched successfully
// The player activity is now running
}
is PlayerLaunchResult.Failure -> {
// Launch failed
Toast.makeText(
context,
"Failed to open video: ${result.message}",
Toast.LENGTH_SHORT
).show()
}
}
val viewOptions = viewOptions {
playerOptions {
// Player mode
playerMode(PlayerMode.FULL_BLEED_MODE)
// UI elements
showShareButton(true)
showMuteButton(true)
showFireworkLogo(false)
// Playback behavior
autoPlayOnComplete(true)
autoplay(true)
}
}
val viewOptions = viewOptions {
playerOptions {
enablePipMode(true)
}
}
// Set globally for all players
FireworkSdk.setPlayerLaunchMode(FwPlayerActivityLaunchMode.SINGLE_TASK)
// Then launch player
FireworkSdk.startPlayer(viewOptions)