chadori-mobile-ironsource
Version:
A Cordova plugin for the Construct Master Collection to implement IronSource Ads.
232 lines (152 loc) • 7.98 kB
JavaScript
const exec = require('cordova/exec');
const IronSource_Class = "IronSourceC"
// General
exports.validateIntegration = function(successCallback, errorCallback) {
cordova.exec(successCallback, errorCallback, IronSource_Class, "validateIntegration", []);
}
exports.setMode = function(data, successCallback, errorCallback) {
/**
* Data Format ::
*
* {
* "reward": true,
* "interstitial": true,
* "offerwall": "true"
* "banner": true
* }
*
*/
cordova.exec(successCallback, errorCallback, IronSource_Class, "setMode", [data]);
}
exports.initialize = function(appKey, userIdType = 0, userId = "", successCallback, errorCallback) {
// @userIdType = [Advertising, IronSource, Specify]
// @userId can be (null), which translates to blank string. Consequently, using the IronSource's built-in user id generator.
if (userId == null) { userId = ""; }
cordova.exec(successCallback, errorCallback, IronSource_Class, "initialize", [appKey, userIdType, userId]);
}
// Advanced Settings
exports.setConsent = function(isGivenConsent, successCallback, errorCallback) {
cordova.exec(successCallback, errorCallback, IronSource_Class,"setConsent", [isGivenConsent]);
}
exports.setCompliance = function(doNotSellData, successCallback, errorCallback) {
cordova.exec(successCallback, errorCallback, IronSource_Class,"setCompliance", [doNotSellData]);
}
exports.setChildDirected = function(isChildDirected, successCallback, errorCallback) {
cordova.exec(successCallback, errorCallback, IronSource_Class,"setChildDirected", [isChildDirected]);
}
exports.setDeviceIdOptOut = function(isOptOut, successCallback, errorCallback) {
cordova.exec(successCallback, errorCallback, IronSource_Class,"setDeviceIdOptOut", [isOptOut]);
}
exports.setMetaData = function(key, data, successCallback, errorCallback) {
cordova.exec(successCallback, errorCallback, IronSource_Class,"setMetaData", [key, data]);
}
exports.setMetaDataBool = function(key, toggle, successCallback, errorCallback) {
cordova.exec(successCallback, errorCallback, IronSource_Class,"setMetaDataBool", [key, toggle]);
}
exports.setSegment = function(data, successCallback, errorCallback) {
/**
* {
* "segmentName": "", // String
* "age": 0, // Integer
* "gender": "", // String
* "level": 0, // Integer
* "userCreationDate": 0, // Long
* "iapTotal": 0.00 // Double
* "isPlaying": true // Boolean
* "customKey": "customValue" // String
* }
*/
cordova.exec(successCallback, errorCallback, IronSource_Class,"setSegment", [data]);
}
exports.setVideoServerParams = function(data, successCallback, errorCallback) {
/**
* {
* "customKey": "customValue" // String
* }
*/
cordova.exec(successCallback, errorCallback, IronSource_Class,"setVideoServerParams", [data]);
}
exports.clearVideoServerParams = function(successCallback, errorCallback) {
cordova.exec(successCallback, errorCallback, IronSource_Class, "clearVideoServerParams", []);
}
exports.setOfferwallCustomParams = function(data, successCallback, errorCallback) {
/**
* {
* "customKey": "customValue" // String
* }
*/
cordova.exec(successCallback, errorCallback, IronSource_Class,"setOfferwallCustomParams", [data]);
}
// Reward Video Advertisements
exports.setShouldTrackNetworkState = function(track, successCallback, errorCallback) {
cordova.exec(successCallback, errorCallback, IronSource_Class,"setShouldTrackNetworkState", [track]);
}
exports.isRewardVideoAvailable = function(successCallback, errorCallback) {
cordova.exec(successCallback, errorCallback, IronSource_Class, "isRewardVideoAvailable", []);
}
exports.showRewardedVideo = function(placementName, successCallback, errorCallback) {
// The 'placementName' can be null.
cordova.exec(successCallback, errorCallback, IronSource_Class, "showRewardedVideo", [placementName]);
}
exports.getVideoPlacementInfo = function(placementName, successCallback, errorCallback) {
cordova.exec(successCallback, errorCallback, IronSource_Class, "getVideoPlacementInfo", [placementName]);
}
exports.isVideoPlacementCapped = function(placementName, successCallback, errorCallback) {
cordova.exec(successCallback, errorCallback, IronSource_Class, "isVideoPlacementCapped", [placementName]);
}
exports.setDynamicUserID = function(dynamicUserID, successCallback, errorCallback) {
cordova.exec(successCallback, errorCallback, IronSource_Class, "setDynamicUserID", [dynamicUserID]);
}
// Interstitial Advertisements
exports.createInterstitial = function(successCallback, errorCallback) {
cordova.exec(successCallback, errorCallback, IronSource_Class, "createInterstitial", []);
}
exports.isInterstitialReady = function(successCallback, errorCallback) {
cordova.exec(successCallback, errorCallback, IronSource_Class, "isInterstitialReady", []);
}
exports.isInterstitialPlacementCapped = function(placementName, successCallback, errorCallback) {
cordova.exec(successCallback, errorCallback, IronSource_Class, "isInterstitialPlacementCapped", [placementName]);
}
exports.showInterstitial = function(placementName, successCallback, errorCallback) {
// The 'placementName' can be null.
cordova.exec(successCallback, errorCallback, IronSource_Class, "showInterstitial", [placementName]);
}
// Banner Advertisements
exports.createBanner = function(placementName, bannerTop, bannerSize, customWidth, customHeight, bannerAutoShow, isAdaptiveBanner, successCallback, errorCallback) {
// The 'placementName' can be null.
// bannerSize = Int index of Enum [Banner, Large, Rectangle, Smart, Custom]
cordova.exec(successCallback, errorCallback, IronSource_Class, "createBanner", [placementName, bannerTop, bannerSize, customWidth,
customHeight, bannerAutoShow, isAdaptiveBanner]);
}
exports.showBanner = function(successCallback, errorCallback) {
cordova.exec(successCallback, errorCallback, IronSource_Class, "showBanner", []);
}
exports.hideBanner = function(successCallback, errorCallback) {
cordova.exec(successCallback, errorCallback, IronSource_Class, "hideBanner", []);
}
exports.destroyBanner = function(successCallback, errorCallback) {
cordova.exec(successCallback, errorCallback, IronSource_Class, "destroyBanner", []);
}
exports.isBannerPlacementCapped = function(placementName, successCallback, errorCallback) {
cordova.exec(successCallback, errorCallback, IronSource_Class, "isBannerPlacementCapped", [placementName]);
}
// Offerwall Advertisements
exports.showOfferwall = function(placementName, successCallback, errorCallback) {
// The 'placementName' can be null.
cordova.exec(successCallback, errorCallback, IronSource_Class, "showOfferwall", [placementName]);
}
exports.getOfferwallCredits = function(successCallback, errorCallback) {
cordova.exec(successCallback, errorCallback, IronSource_Class, "getOfferwallCredits", []);
}
exports.setClientSideCallbacks = function(receive, successCallback, errorCallback) {
cordova.exec(successCallback, errorCallback, IronSource_Class, "setClientSideCallbacks", [receive]);
}
// Tools
exports.getMode = function(successCallback, errorCallback) {
cordova.exec(successCallback, errorCallback, IronSource_Class, "getMode", []);
}
exports.setBannerOverlap = function(overlap, successCallback, errorCallback) {
// Cannot call after initialization. [Prevent Overlap toggle change bug.]
// Non-Overlap is not supported in iOS.
cordova.exec(successCallback, errorCallback, IronSource_Class, "setBannerOverlap", [overlap]);
}