Links

Migrate From V1 To V2

V2 Android feature comparison with V1 Android feature

As Flutter SDK V2 upgrades Android SDK from V5 to V6, there are some differences in the features supported by V1 and V2 on the Android side. We made the feature comparison table below.
Features
V1 Android
V2 Android
Discover Feed
Channel Feed
Playlist Feed
Playlist Group Feed
Coming Soon
​Dynamic Content
Horizontal/Vertical/Grid Layouts
CTA button on Videos
CTA button click handler and listener
Shoppable Videos (Product Cards & Shopping experience
Feed item click listener
Video Player configurations
Share and Deep-link mechanism
Autoplay in Feed and its configuration
Livestream
IMA Ads
FWAI Ads
Storyblock
Picture in Picture(Outside App)
Picture in Picture(Inside App)
Multihost Livestream(Agora)
Low Latency Livestream
Retail Media Network (RMN) Ad support
Interstitial Ima Ad support
Interstitial FWAI Ad support
App-level setting
The above table is last updated on June 8, 2023.

Migration steps

Update package version

Update the version of fw_flutter_sdk from 1.x.x to 2.x.x.

Configure video launch behavior

You need to follow V2 usage instead of V1 usage to configure video launch behavior.
// V1 usage
VideoFeed(
source: VideoFeedSource.discover,
videoPlayerConfiguration: VideoPlayerConfiguration(
launchBehavior: VideoLaunchBehavior.muteOnFirstLaunch,
),
)
// V2 usage
FireworkSDK.getInstance().init(
videoLaunchBehavior: VideoLaunchBehavior.muteOnFirstLaunch,
);

Update the Android project setting

As Flutter SDK V2 upgrades Android SDK from V5 to V6, please follow this guide to set up the Android project.
The main changes are:
  • The min kotlin version is: 1.6.10
  • Add mavenCentral() to build.gradle
  • V2 doesn't require adding maven { url "https://jitpack.io" } to build.gradle. You could remove maven { url "https://jitpack.io" } if no other library requires this.

Configure the shopping CTA style through Dart codes(Only supported on iOS)

You need to follow V2 usage instead of V1 usage to configure the shopping CTA style through Dart codes on the iOS side.
// V1 usage
FireworkSDK.getInstance().shopping.onWillDisplayProduct = (_) async {
return ProductInfoViewConfiguration(
addToCartButton: AddToCartButtonConfiguration(
backgroundColor: "#c0c0c0",
textColor: "#ffffff",
fontSize: 16,
),
);
};
// V2 usage
FireworkSDK.getInstance().shopping.productInfoViewConfiguration =
ProductInfoViewConfiguration(
ctaButton: ShoppingCTAButtonConfiguration(
backgroundColor: "#c0c0c0",
textColor: "#ffffff",
fontSize: 16,
),
);
Last modified 3mo ago