flutter_linkid_mmp 1.1.81
flutter_linkid_mmp: ^1.1.81 copied to clipboard
Airflex.io is a Mobile Marketing Platform that offers tools for analyzing and optimizing user experiences on mobile and web platforms. It features real-time data analytics, audience segmentation, frau [...]
LinkId Mobile Marketing Platform for Flutter
Getting started #
Run this command:
$ flutter pub add flutter_linkid_mmp
This will add a line like this to your package's pubspec.yaml (and run an implicit dart pub get):
dependencies:
flutter_linkid_mmp: ^1.1.80
Alternatively, your editor might support dart pub get or flutter pub get. Check the docs for your editor to learn more.
Usage #
Retail Media #
1. Widget AdRetailMediaWidget
- A built-in widget that can get ad from id and type, display ad to user and handle tracking ad click, tracking ad impression.
- Parameters:
Parameters | Description |
---|---|
adId | Advertisement's id, get from Ad Inventory on Airflex portal |
adType | Type of ad. Currently there are 2 types: BANNER (only image) and PRODUCT (information about product including image, name, description and price). |
placeholder | Placeholder when getting ad |
padding | Padding around ad, default is EdgeInsets.all(16) |
timeoutGetAd | Timeout when getting ad, default is Duration(seconds: 30) |
keepAlive | Whether to keep this widget alive in lazy list, default is true |
adListenerCallback | Listener callbacks for ad widget such as onAdError, onAdClick, onAdImpression,... |
AdRetailMediaWidget(
adId: 'ad inventory id',
adType: AdType.banner,
placeholder: Center(child: CircularProgressIndicator()),
padding: EdgeInsets.all(16),
keepAlive: true,
timeoutGetAd: Duration(seconds: 30),
adListenerCallback: AdListenerCallback(
onAdError: (error, adId, adType) {
debugPrint('onAdError: $error, $adId, $adType');
},
onAdClick: (adId, adType, productId, actionType, actionData) {
debugPrint('onAdClick: $adId, $adType, $productId, $actionType, $actionData');
// Should check actionType is inapp or outapp to handle actionData:
// If actionType = inapp then should use product id or actionData to navigate to a specific screen in your app
// If actionType = outapp then should open actionData as an url outside your app
},
onAdImpression: (adId, adType, productId) {
debugPrint('onAdImpression: $adId, $adType, $productId');
},
),
)
2. Customize your ad UI:
- Use Airflex.shared.getAd() to get all information about your ad and the product it represent.
- Then you can write your own widget to display your ad and handle action onAdClick, onAdImpression from scratch.
- Remember when handling action onAdClick and onAdImpression, you must call Airflex.shared.trackAdClick() and Airflex.shared.trackAdImpression().
3. Ad functions:
Functions | Description |
---|---|
Airflex.shared.getAd() | Get ad by id (get from Ad Inventory on Airflex Portal) and type (banner, product,...). The response is in raw format (Map<String, dynamic>), you can use the pre-defined AdMediaData class to parse the response to a model or write your own model class. |
Airflex.shared.trackAdClick() | Tracking event on user click an ad. |
Airflex.shared.trackAdImpression() | Tracking event on user see your ad. |
- Product id can be retrieved from Airflex.shared.getAd() in 1 of 2 ways: (1) Get from attributes data-ad-element-id in html from field adData, (2) Get from field id in adDataJson.
Example #
Additional information #
Email: leonacky@gmail.com