Discovery Feed
The Discovery Feed provides curated content from the Firework platform that learns user preferences over time. It's the most exploratory feed type, probing user preferences and recommending videos users are most likely to engage with while maintaining your app's core theme.
Overview
Discovery Feed uses recommendation algorithms to:
Learn what users like and dislike over time
Suggest videos based on user engagement patterns
Maintain app-specific constraints you configure
Configuration Options
You can configure the following constraints for your application during registration. Work with the Firework partner success team to help with configuration:
Available Constraints
Locale - Filter videos by specific locales
Country - Filter by country where video was uploaded
Language - Filter by video language
Allow Tags - Include videos with specific tags
Reject Tags - Exclude videos with specific tags
Note: If no constraints are defined, you may see international content. Constraints can be defined at registration time or configured at runtime.
Usage
XML Configuration
<com.firework.videofeed.FwVideoFeedView
android:id="@+id/videoFeedView"
android:layout_width="match_parent"
android:layout_height="match_parent"/>Programmatic Configuration
val viewOptions = viewOptions {
baseOptions {
feedResource(FeedResource.Discovery)
}
layoutOptions {
feedLayout(FeedLayout.GRID)
columnCount(3)
}
}
val videoFeedView = findViewById<FwVideoFeedView>(R.id.videoFeedView)
videoFeedView.init(viewOptions)Complete Example
class DiscoveryActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_discovery)
val videoFeedView = findViewById<FwVideoFeedView>(R.id.videoFeedView)
val viewOptions = viewOptions {
baseOptions {
feedResource(FeedResource.Discovery)
}
layoutOptions {
feedLayout(FeedLayout.GRID)
columnCount(3)
}
titleOptions {
showFeedTitle(true)
}
}
videoFeedView.init(viewOptions)
}
}Important Notes
Discovery Feed requires no parameters (it's a singleton object)
Content is personalized based on user engagement
Backend constraints can be configured through your Firework account
Videos are ordered by recommendation algorithm
User preferences are learned over time through interactions
See Also
Feed Sources Overview - All available feed types
BaseOption Configuration - Detailed configuration
FwVideoFeedView - Video feed widget
Layout Options - Feed layout configuration
Last updated
Was this helpful?