# Widgets Overview

The Firework Android SDK provides three main ways to display video content in your application. Each widget is designed for specific use cases and offers different levels of integration.

## Available Widgets

### 1. FwVideoFeedView

`FwVideoFeedView` is an embeddable view that displays a scrollable feed of video thumbnails. When a user taps on a thumbnail, the full video player launches.

**Use Cases:**

* Display a horizontal, vertical, or grid feed of videos
* Embed video content within existing layouts
* Show curated content from channels, playlists, or discovery feeds

**Key Features:**

* XML and programmatic initialization
* Multiple layout types (horizontal, vertical, grid)
* Feed refresh capability
* Customizable appearance via ViewOptions

**Layout Examples:**

| Grid Layout                                | Horizontal Layout                        | Vertical Layout                      |
| ------------------------------------------ | ---------------------------------------- | ------------------------------------ |
| ![Horizontal](/files/oI749DQobkYNTI2VKvqn) | ![Vertical](/files/lIu7aZt0cl7tW4LfAztV) | ![Grid](/files/jHzfnAwh8RV15x5gKOgP) |

[Learn more about FwVideoFeedView](/firework-for-developers/android-sdk/integration-guide/configure-video-feed.md)

### 2. FwStoryBlockView

`FwStoryBlockView` is an inline video player that embeds directly into your view hierarchy, similar to stories on social platforms.

**Use Cases:**

* Create story-like video experiences
* Embed a single-video player in a layout
* Build custom video browsing experiences

**Key Features:**

* Lifecycle management (init/destroy)
* Multiple player modes (FIT\_MODE, FULL\_BLEED\_MODE)
* Fullscreen expansion capability
* Play/pause control
* Feed loading and error listeners

**Layout Examples:**

![StoryBlock](/files/nLrcDodgvKfhXhxQT0Ib)

[Learn more about FwStoryBlockView](/firework-for-developers/android-sdk/integration-guide/storyblock.md)

### 3. FireworkSdk.startPlayer

`FireworkSdk.startPlayer()` is a method that launches a fullscreen video player as a separate activity.

**Use Cases:**

* Launch videos from buttons, deep links, or custom UI
* Open specific videos by URL or feed configuration
* Create custom video entry points

**Key Features:**

* Direct video playback without embedding UI
* Two variants: with specific URL or with feed configuration
* Returns PlayerLaunchResult for handling success/failure
* Full player customization via ViewOptions

**Layout Examples:**

![StoryBlock](/files/yZJiUfLgLdHcE7yp7iKh)

[Learn more about FireworkSdk.startPlayer](/firework-for-developers/android-sdk/integration-guide/fullscreen-player.md)

## Comparison Table

| Feature                | FwVideoFeedView   | FwStoryBlockView      | FireworkSdk.startPlayer |
| ---------------------- | ----------------- | --------------------- | ----------------------- |
| **Integration Type**   | Embedded view     | Embedded view         | Separate activity       |
| **Layout Flexibility** | Multiple layouts  | Single player         | Full screen only        |
| **Lifecycle**          | Fragment/Activity | Manual (init/destroy) | Managed by SDK          |
| **Use in XML**         | ✓ Yes             | ✓ Yes                 | ✗ No                    |
| **Feed Display**       | Thumbnails        | Direct playback       | Direct playback         |
| **Customization**      | ViewOptions       | ViewOptions           | ViewOptions             |
| **Best For**           | Content discovery | Story experiences     | Direct playback         |

## Choosing the Right Widget

**Choose FwVideoFeedView when:**

* You want users to browse and select videos
* You need to display multiple videos in a feed
* You want flexible layouts (horizontal, vertical, grid)

**Choose FwStoryBlockView when:**

* You want an immersive, single-video experience
* You need fine-grained lifecycle control
* You want to build story-like UI patterns

**Choose FireworkSdk.startPlayer when:**

* You want to launch a video immediately
* You're handling deep links or notifications
* You have a custom UI for video selection

## Configuration

All three widgets support configuration through `ViewOptions`, which allows you to customize:

* Player behavior and appearance
* Feed sources and content
* Shopping and livestream features
* CTA buttons and interactions

See the [Configuration Guide](/firework-for-developers/android-sdk/integration-guide/configuration.md) for detailed ViewOptions documentation.

## Next Steps

* Learn about [Feed Sources](/firework-for-developers/android-sdk/integration-guide/feed-sources.md) to understand content types
* Explore [ViewOptions Configuration](/firework-for-developers/android-sdk/integration-guide/configuration.md) for customization
* Check out [Shopping Integration](/firework-for-developers/android-sdk/integration-guide/shoppable-videos.md) for e-commerce features
* Review [Livestream Features](/firework-for-developers/android-sdk/integration-guide/livestream.md) for live content


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.firework.com/firework-for-developers/android-sdk/integration-guide/widgets.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
