npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2025 – Pkg Stats / Ryan Hefner

@govindbhumkar/cordova-facebook-ads

v1.0.2

Published

A Cordova plugin for integrating Facebook Audience Network ads. Supports banner ads, interstitial ads, and rewarded video ads for mobile applications.

Readme

Facebook Audience Network Ads

This plugin provides a simple interface for displaying Facebook Audience Network ads in your Cordova, Capacitor applications.

Table of Contents

Installation

Using the Cordova CLI

$ cordova plugin add @govindbhumkar/cordova-facebook-ads

npm

$ npm install @govindbhumkar/cordova-facebook-ads

SDK Version

This plugin uses the latest Facebook Audience Network SDK. Current version:

com.facebook.android:audience-network-sdk:6.+

Banner Ads

Load and Show Banner Ads

Note: It's strongly recommended to use loadAndShowBannerAds for banner ads instead of loading, showing, and hiding separately.

Syntax

cordova.facebookads.loadAndShowBannerAds(options, bannerSuccess, bannerFail);

Options

var options = {
  bannerid: "523519301434xxx_xxxxxxxxxxxxxxx",
  isTesting: true|false,
  position: "BOTTOM_CENTER", // Optional: TOP_CENTER, CENTER, or BOTTOM_CENTER
  margin: 0 // Optional: margin in pixels, behavior depends on position
}

Position and Margin Behavior

  • BOTTOM_CENTER: Applies margin-bottom
  • TOP_CENTER: Applies margin-top
  • CENTER: Applies equal vertical margins

Example

var options = {
  bannerid: "523519301434xxx_xxxxxxxxxxxxxxx",
  isTesting: true,
  position: "BOTTOM_CENTER",
  margin: 0
};

cordova.facebookads.loadAndShowBannerAds(options, bannerSuccess, bannerFail);

function bannerSuccess(evt) {
  if(evt === "AdLoaded") {
     console.log("Facebook AdLoaded");
  }
  else if(evt === "AdClicked") {
     console.log("Facebook AdClicked");
  }
  else if(evt === "AdImpression") {
     console.log("Facebook AdImpression");
  }
  else if(evt === "AdDistroyed") {
     console.log("Facebook banner AdDistroyed");
  }  
  else if(evt === "AdHidden") {
     console.log("Facebook AdHidden");
  }  
}

function bannerFail(result) {
  console.log(result);
}

Screenshot

Load Banner Ads Only

Syntax

cordova.facebookads.loadBannerAds(options, bannerSuccess, bannerFail);

Options

var options = {
  bannerid: "523519301434xxx_xxxxxxxxxxxxxxx",
  isTesting: true|false,
  position: "BOTTOM_CENTER", // Optional: TOP_CENTER, CENTER, or BOTTOM_CENTER
  margin: 0 // Optional: margin in pixels, behavior depends on position
}

Example

cordova.facebookads.loadBannerAds(options, bannerSuccess, bannerFail);

function bannerSuccess(evt) {
  if(evt === "AdLoaded") {
     console.log("Facebook AdLoaded");
  }
  else if(evt === "AdClicked") {
     console.log("Facebook AdClicked");
  }
  else if(evt === "AdImpression") {
     console.log("Facebook AdImpression");
  }
  else if(evt === "AdDistroyed") {
    console.log("Facebook banner AdDistroyed");
  }   
  else if(evt === "AdHidden") {
     console.log("Facebook AdHidden");
  }  
}

function bannerFail(result) {
  console.log(result);
}

Show Banner Ads

Syntax

cordova.facebookads.showBannerAds(bannerSuccess, bannerFail);

Example

cordova.facebookads.showBannerAds(bannerSuccess, bannerFail);

function bannerSuccess(evt) {
  if(evt === "AdLoaded") {
     console.log("Facebook AdLoaded");
  }
  else if(evt === "AdClicked") {
     console.log("Facebook AdClicked");
  }
  else if(evt === "AdImpression") {
     console.log("Facebook AdImpression");
  }
  else if(evt === "AdDistroyed") {
    console.log("Facebook banner AdDistroyed");
  }  
  else if(evt === "AdHidden") {
     console.log("Facebook AdHidden");
  }  
}

function bannerFail(result) {
  console.log(result);
}

Hide/Destroy Banner Ads

Syntax

cordova.facebookads.distroyBannerAds(bannerSuccess, bannerFail);

Example

cordova.facebookads.distroyBannerAds(bannerSuccess, bannerFail);

function bannerSuccess(evt) {
  if(evt === "AdLoaded") {
     console.log("Facebook AdLoaded");
  }
  else if(evt === "AdClicked") {
     console.log("Facebook AdClicked");
  }
  else if(evt === "AdImpression") {
     console.log("Facebook AdImpression");
  }
  else if(evt === "AdDistroyed") {
     console.log("Facebook AdDistroyed");
  }  
}

function bannerFail(result) {
  console.log(result);
}

Screenshot

Interstitial Ads

Load Interstitial Ads

Syntax

cordova.facebookads.loadInterstitialAds(options, interstitialSuccess, interstitialFail);

Options

var options = {
  interstitialid: "52351930143xxx_xxxxxxxxxxxxxxx",
  isTesting: true|false
}

Example

var options = {
  interstitialid: "52351930143xxx_xxxxxxxxxxxxxxx",
  isTesting: true
};

cordova.facebookads.loadInterstitialAds(options, interstitialSuccess, interstitialFail);

function interstitialSuccess(evt) {
  if(evt === "AdDisplayed") {
     console.log("Facebook AdDisplayed");
  }
  else if(evt === "AdClosed") {
     console.log("Facebook AdClosed");
  }
  else if(evt === "AdLoaded") {
     console.log("Facebook AdLoaded");
  }
  else if(evt === "AdClicked") {
     console.log("Facebook AdClicked");
  }
  else if(evt === "AdImpression") {
     console.log("Facebook AdImpression");
  }
}

function interstitialFail(result) {
  console.log(result);
}

Show Interstitial Ads

Syntax

cordova.facebookads.showInterstitialAds(interstitialSuccess, interstitialFail);

Example

cordova.facebookads.showInterstitialAds(interstitialSuccess, interstitialFail);

function interstitialSuccess(evt) {
  if(evt === "AdDisplayed") {
     console.log("Facebook AdDisplayed");
  }
  else if(evt === "AdClosed") {
     console.log("Facebook AdClosed");
  }
  else if(evt === "AdLoaded") {
     console.log("Facebook AdLoaded");
  }
  else if(evt === "AdClicked") {
     console.log("Facebook AdClicked");
  }
  else if(evt === "AdImpression") {
     console.log("Facebook AdImpression");
  }
}

function interstitialFail(result) {
  console.log(result);
}

Screenshot

Reward Video Ads

Load Reward Video Ads

Syntax

cordova.facebookads.loadRewardVideoAd(options, videoRewardSuccess, videoRewardFail);

Options

var options = {
  videoid: "52351930143xxx_xxxxxxxxxxxxxxx",
  isTesting: true|false
}

Example

var options = {
  videoid: "52351930143xxx_xxxxxxxxxxxxxxx",
  isTesting: true
};

cordova.facebookads.loadRewardVideoAd(options, videoRewardSuccess, videoRewardFail);

function videoRewardSuccess(evt) {
  if(evt === "AdLoaded") {
     console.log("Facebook AdLoaded");
  }
  else if(evt === "AdClicked") {
     console.log("Facebook AdClicked");
  }
  else if(evt === "AdPlaying") {
     console.log("Facebook AdPlaying");
  }
  else if(evt === "AdCompleted") {
     console.log("Facebook AdCompleted");
  }
  else if(evt === "AdClosed") {
     console.log("Facebook AdClosed");
  }
}

function videoRewardFail(result) {
  console.log(result);
}

Important Note: If you get the error "Rewarded video ad failed to load: The display format in the ad request does not match the display format specified for this placement. Each placement can only be used with a single display format. You can create multiple placements in order to use multiple display formats.", follow these steps:

  1. You must have the Audience Network SDK integrated in your game
  2. Your app must have an active, approved Audience Network account with payment information
  3. Game only: Your game app is active and added to your account
  4. Ad position: You must already have a rewarded video ad unit in your game

Reference: Stack Overflow

Show Reward Video Ads

Syntax

cordova.facebookads.showRewardVideoAd(videoRewardSuccess, videoRewardFail);

Example

cordova.facebookads.showRewardVideoAd(videoRewardSuccess, videoRewardFail);

function videoRewardSuccess(evt) {
  if(evt === "AdLoaded") {
     console.log("Facebook AdLoaded");
  }
  else if(evt === "AdClicked") {
     console.log("Facebook AdClicked");
  }
  else if(evt === "AdPlaying") {
     console.log("Facebook AdPlaying");
  }
  else if(evt === "AdCompleted") {
     console.log("Facebook AdCompleted");
  }
  else if(evt === "AdClosed") {
     console.log("Facebook AdClosed");
  }
}

function videoRewardFail(result) {
  console.log(result);
}

Supported Platforms

  • Android

Thanks

This plugin is a modified fork of [cordova-plugin-codeplay-facebookads-free](https://githThis plugin is a modified fork of cordova-plugin-codeplay-facebookads-free. Special thanks to merbin2012 for creating the original plugin that served as the foundation for this enhanced version.