Difference between revisions of "Ads"
(→Events) |
|||
Line 118: | Line 118: | ||
[[Event.AD_ACTION_BEGIN]]<br/><!--GIDEROSEVT:Event.AD_ACTION_BEGIN adActionBegin--> | [[Event.AD_ACTION_BEGIN]]<br/><!--GIDEROSEVT:Event.AD_ACTION_BEGIN adActionBegin--> | ||
[[Event.AD_ACTION_END]]<br/><!--GIDEROSEVT:Event.AD_ACTION_END adActionEnd--> | [[Event.AD_ACTION_END]]<br/><!--GIDEROSEVT:Event.AD_ACTION_END adActionEnd--> | ||
+ | [[Event.AD_CONSENT]]<br/><!--GIDEROSEVT:Event.AD_CONSENTD adConsent--> | ||
[[Event.AD_DISMISSED]]<br/><!--GIDEROSEVT:Event.AD_DISMISSED adDismissed--> | [[Event.AD_DISMISSED]]<br/><!--GIDEROSEVT:Event.AD_DISMISSED adDismissed--> | ||
[[Event.AD_ERROR]]<br/><!--GIDEROSEVT:Event.AD_ERROR adError--> | [[Event.AD_ERROR]]<br/><!--GIDEROSEVT:Event.AD_ERROR adError--> | ||
[[Event.AD_FAILED]]<br/><!--GIDEROSEVT:Event.AD_FAILED adFailed--> | [[Event.AD_FAILED]]<br/><!--GIDEROSEVT:Event.AD_FAILED adFailed--> | ||
[[Event.AD_RECEIVED]]<br/><!--GIDEROSEVT:Event.AD_RECEIVED adReceived--> | [[Event.AD_RECEIVED]]<br/><!--GIDEROSEVT:Event.AD_RECEIVED adReceived--> | ||
− | [[Event.AD_REWARDED]]<br/><!--GIDEROSEVT:Event. | + | [[Event.AD_REWARDED]]<br/><!--GIDEROSEVT:Event.AD_REWARDED adRewarded--> |
+ | [[Event.ADS_READY]]<br/><!--GIDEROSEVT:Event.ADS_READY adsReady--> | ||
=== Constants === | === Constants === |
Revision as of 07:14, 18 August 2023
Supported platforms:
Available since: Gideros 2011.6
Inherits from: EventDispatcher
Description
The idea is to provide a common Ads interface for most of available ad frameworks. A common ads interface allows users to switch and fall back between ad frameworks at runtime.
More information available in [1](Ads interface guide).
Examples
Admob
Ads = Core.class(Sprite) -- you need to add "Ads" and "Gaming" to your project Plugins
function Ads:init()
-- ads
self.ADMOB_APP_ID = "ca-app-pub-3940256099942544~3347511713" -- google test id
self.ADMOB_UNIT_ID = "ca-app-pub-3940256099942544/6300978111" -- google test id
-- admob (setup for simple banner adverts), note: only visible on phone/tablet
if application:getDeviceInfo() == "Android" then
require 'ads' --create real object for on device
self.ADMOB = Ads.new('admob')
self.ADMOB:setKey(self.ADMOB_APP_ID)
self.ADMOB:addEventListener(Event.AD_RECEIVED, function() -- show ad
self.ADMOB:showAd('banner')
self.ADMOB:setAlignment('center', 'bottom')
end)
self.ADMOB:addEventListener(Event.AD_FAILED, function(e) end)
self.ADMOB:addEventListener(Event.AD_ACTION_BEGIN, function() end)
self.ADMOB:addEventListener(Event.AD_ACTION_END, function() end)
self.ADMOB:addEventListener(Event.AD_DISMISSED, function() end)
self.ADMOB:loadAd("banner", self.ADMOB_UNIT_ID) -- load ad
else
self.ADMOB = {} -- create fake object for testing in windows player
self.ADMOB.loadAd = function() end
self.ADMOB.showAd = function() end
end
-- LISTENERS
self:addEventListener("enterBegin", self.onTransitionInBegin, self)
self:addEventListener("enterEnd", self.onTransitionInEnd, self)
self:addEventListener("exitBegin", self.onTransitionOutBegin, self)
self:addEventListener("exitEnd", self.onTransitionOutEnd, self)
end
-- EVENT LISTENERS
function Ads:onTransitionInBegin()
end
function Ads:onTransitionInEnd()
end
function Ads:onTransitionOutBegin()
end
function Ads:onTransitionOutEnd()
end
Creating fallbacks with Ads frameworks
--require plugin
require "ads"
--initialize amazon
amazon = Ads.new("amazon")
amazon:setKey("amazon-key")
--initialize admob
admob = Ads.new("admob")
admob:setKey("admob-key")
--if amazon fails
--show admob
amazon:addEventListener(Event.AD_FAILED, function(e)
print("amazon AD_FAILED", e.error)
admob:showAd("auto")
end)
--if admob fails
--show amazon
admob:addEventListener(Event.AD_FAILED, function(e)
print("admob AD_FAILED", e.error)
amazon:showAd("auto")
end)
--start displaying amazon ads
amazon:showAd("auto")
MethodsAds.new initializes new ad framework |
EventsEvent.AD_ACTION_BEGIN Constants |