fb_audience_network_ad

Last updated:

0 purchases

fb_audience_network_ad Image
fb_audience_network_ad Images
Add to Cart

Description:

fb audience network ad

flutter_plugin_audience_network_ad #
Plugin to integrate Facebook Native Ad to Flutter application
@override
Widget build(BuildContext context) {
return Scaffold(
body: Stack(
children: <Widget>[
Center(
child: FacebookBannerAd(
placementId: getPlacementId(),
bannerSize: BannerSize.STANDARD,
listener: (result, value) {
setState(() {
_bannerAdResult = result;
});
},
),
),
Center(
child: _getContentSection(),
),
],
),
);
}
Widget _getContentSection() {
switch (_bannerAdResult) {
case BannerAdResult.ERROR:
return RichText(
overflow: TextOverflow.ellipsis,
maxLines: 1,
text: TextSpan(
children: <TextSpan>[
TextSpan(
text: 'Error',
style: TextStyle(
fontWeight: FontWeight.bold,
color: Colors.grey,
fontSize: 12.0,
),
),
],
),
);
case BannerAdResult.LOADED:
case BannerAdResult.CLICKED:
case BannerAdResult.LOGGING_IMPRESSION:
return Container();
break;
default:
return Container(
child: RichText(
overflow: TextOverflow.ellipsis,
maxLines: 1,
text: TextSpan(
children: <TextSpan>[
TextSpan(
text: 'Loading..',
style: TextStyle(
fontWeight: FontWeight.bold,
color: Colors.grey,
fontSize: 12.0,
),
),
],
),
),
);
}
}
copied to clipboard
void _loadInterstitialAd() {
FacebookInterstitialAd.loadInterstitialAd(
placementId: getPlacementId(),
listener: (result, value) {
setState(() {
_interstitialAdResult = result;
});
if (result == InterstitialAdResult.LOADED) {
FacebookInterstitialAd.showInterstitialAd();
}
if (result == InterstitialAdResult.DISMISSED && value["invalidated"] == true) {
_loadInterstitialAd();
}
},
);
}
copied to clipboard
@override
Widget build(BuildContext context) {
return Scaffold(
body: Stack(
children: <Widget>[
Center(
child: FacebookNativeAd(
placementId: getPlacementId(),
adType: NativeAdType.NATIVE_AD_HORIZONTAL,
width: double.infinity,
height: 300,
backgroundColor: Colors.white,
titleColor: Color.fromARGB(0xff, 0x00, 0x1E, 0x31),
descriptionColor: Color.fromARGB(0xff, 0x00, 0x1E, 0x31),
buttonColor: Color.fromARGB(0xff, 0xf8, 0xd0, 0x00),
buttonTitleColor: Color.fromARGB(0xff, 0x00, 0x1E, 0x31),
buttonBorderColor: Colors.white,
listener: (result, value) {
setState(() {
_nativeAdResult = result;
print("NativeAdWidget Ad : $result --> $value");
});
},
),
),
Center(
child: _getContentSection(),
),
],
),
);
}

Widget _getContentSection() {
switch (_nativeAdResult) {
case NativeAdResult.ERROR:
return RichText(
overflow: TextOverflow.ellipsis,
maxLines: 1,
text: TextSpan(
children: <TextSpan>[
TextSpan(
text: 'Error',
style: TextStyle(
fontWeight: FontWeight.bold,
color: Colors.grey,
fontSize: 12.0,
),
),
],
),
);
case NativeAdResult.LOADED:
case NativeAdResult.MEDIA_DOWNLOADED:
case NativeAdResult.LOGGING_IMPRESSION:
return Container();
break;
default:
return Container(
child: RichText(
overflow: TextOverflow.ellipsis,
maxLines: 1,
text: TextSpan(
children: <TextSpan>[
TextSpan(
text: 'Loading..',
style: TextStyle(
fontWeight: FontWeight.bold,
color: Colors.grey,
fontSize: 12.0,
),
),
],
),
),
);
}
}
copied to clipboard

placementID: required placement ID from Facebook. If you want to run test ads, please use "YOUR_PLACEMENT_ID"

Features Request #
just facebook audience ad network support Android and iOS.

License:

For personal and professional use. You cannot resell or redistribute these repositories in their original state.

Files In This Product:

Customer Reviews

There are no reviews.