Difference between revisions of "Iad.Banner.new"

From GiderosMobile
m (Text replacement - "</source>" to "</syntaxhighlight>")
 
(3 intermediate revisions by the same user not shown)
Line 1: Line 1:
 
__NOTOC__
 
__NOTOC__
 +
<languages />
 
'''<translate>Available since</translate>:''' Gideros 2012.8<br/>
 
'''<translate>Available since</translate>:''' Gideros 2012.8<br/>
 
'''<translate>Class</translate>:''' [[Special:MyLanguage/iad.Banner|iad.Banner]]<br/>
 
'''<translate>Class</translate>:''' [[Special:MyLanguage/iad.Banner|iad.Banner]]<br/>
 
=== <translate>Description</translate> ===
 
=== <translate>Description</translate> ===
 
<translate><br />
 
<translate><br />
Creates an `iad.Banner` instance. If iAd framework is not available, this function gives an error.<br />
+
Creates an [[Special:MyLanguage/iad.Banner|iad.Banner]] instance. If iAd framework is not available, this function gives an error.<br />
 
<br />
 
<br />
 
The alignment and the orientation of the ad banner are defined by these 4 string constants:<br />
 
The alignment and the orientation of the ad banner are defined by these 4 string constants:<br />
 
<br />
 
<br />
 
&lt;ul&gt;<br />
 
&lt;ul&gt;<br />
&lt;li&gt;`iad.Banner.TOP = &quot;top&quot;`&lt;/li&gt;<br />
+
&lt;li&gt;''iad.Banner.TOP = &quot;top&quot;''&lt;/li&gt;<br />
&lt;li&gt;`iad.Banner.BOTTOM = &quot;bottom&quot;`&lt;/li&gt;<br />
+
&lt;li&gt;''iad.Banner.BOTTOM = &quot;bottom&quot;''&lt;/li&gt;<br />
&lt;li&gt;`iad.Banner.PORTRAIT = &quot;portrait&quot;`&lt;/li&gt;<br />
+
&lt;li&gt;''iad.Banner.PORTRAIT = &quot;portrait&quot;''&lt;/li&gt;<br />
&lt;li&gt;`iad.Banner.LANDSCAPE = &quot;landscape&quot;`&lt;/li&gt;<br />
+
&lt;li&gt;''iad.Banner.LANDSCAPE = &quot;landscape&quot;''&lt;/li&gt;<br />
 
&lt;/ul&gt;<br />
 
&lt;/ul&gt;<br />
 
<br />
 
<br />
And `iad.Banner` class dispatches these 4 events:<br />
+
And [[Special:MyLanguage/iad.Banner|iad.Banner]] class dispatches these 4 events:<br />
 
<br />
 
<br />
 
&lt;ul&gt;<br />
 
&lt;ul&gt;<br />
&lt;li&gt;`Event.BANNER_AD_LOADED = &quot;bannerAdLoaded&quot;`&lt;/li&gt;<br />
+
&lt;li&gt;''Event.BANNER_AD_LOADED = &quot;bannerAdLoaded&quot;''&lt;/li&gt;<br />
&lt;li&gt;`Event.BANNER_AD_FAILED = &quot;bannerAdFailed&quot;`&lt;/li&gt;<br />
+
&lt;li&gt;''Event.BANNER_AD_FAILED = &quot;bannerAdFailed&quot;''&lt;/li&gt;<br />
&lt;li&gt;`Event.BANNER_ACTION_BEGIN = &quot;bannerActionBegin&quot;`&lt;/li&gt;<br />
+
&lt;li&gt;''Event.BANNER_ACTION_BEGIN = &quot;bannerActionBegin&quot;''&lt;/li&gt;<br />
&lt;li&gt;`Event.BANNER_ACTION_FINISHED = &quot;bannerActionFinished&quot;`&lt;/li&gt;<br />
+
&lt;li&gt;''Event.BANNER_ACTION_FINISHED = &quot;bannerActionFinished&quot;''&lt;/li&gt;<br />
 
&lt;/ul&gt;<br />
 
&lt;/ul&gt;<br />
 
<br />
 
<br />
Line 27: Line 28:
 
Apple also requires that the ad area be hidden when no ad is available to display. iAd module manages all this behavior for you automatically.<br />
 
Apple also requires that the ad area be hidden when no ad is available to display. iAd module manages all this behavior for you automatically.<br />
 
<br />
 
<br />
When an ad becomes available, it will be displayed on the screen, the event `Event.BANNER_AD_LOADED` is dispatched when one is about to be displayed,<br />
+
When an ad becomes available, it will be displayed on the screen, the event [[Special:MyLanguage/Event.BANNER_AD_LOADED|Event.BANNER_AD_LOADED]] is dispatched when one is about to be displayed,<br />
or the event `Event.BANNER_AD_FAILED` is dispatched when the loading has failed. If the loading has failed, the fields `event.errorCode` and `event.errorDescription` <br />
+
or the event [[Special:MyLanguage/Event.BANNER_AD_FAILED|Event.BANNER_AD_FAILED]] is dispatched when the loading has failed. If the loading has failed, the fields ''event.errorCode'' and ''event.errorDescription'' <br />
 
contains information about the failure reason.<br />
 
contains information about the failure reason.<br />
 
<br />
 
<br />
When the user clicks on an ad, the event `Event.BANNER_ACTION_BEGIN` is dispatched. At this time, the user will either be taken out of your application <br />
+
When the user clicks on an ad, the event [[Special:MyLanguage/Event.BANNER_ACTION_BEGIN|Event.BANNER_ACTION_BEGIN]] is dispatched. At this time, the user will either be taken out of your application <br />
to view the app store (in this case `event.willLeaveApplication` field will be true), or they will be presented with a fullscreen advertisement to interact with, <br />
+
to view the app store (in this case ''event.willLeaveApplication'' field will be true), or they will be presented with a fullscreen advertisement to interact with, <br />
and `event.willLeaveApplication` will be false. In the latter case, you may decide to pause the application until the event `Event.BANNER_ACTION_FINISHED` is dispatched. <br />
+
and ''event.willLeaveApplication'' will be false. In the latter case, you may decide to pause the application until the event [[Special:MyLanguage/Event.BANNER_ACTION_FINISHED|Event.BANNER_ACTION_FINISHED]] is dispatched. <br />
 
<br /></translate>
 
<br /></translate>
<source lang="lua">
+
<syntaxhighlight lang="lua">
 
  iad.Banner.new(alignment,orientation)
 
  iad.Banner.new(alignment,orientation)
</source>
+
</syntaxhighlight>
 
=== <translate>Parameters</translate> ===
 
=== <translate>Parameters</translate> ===
 
'''alignment''': (string) <translate>whether you want ads to show top or bottom of the screen. It can be either iad.Banner.TOP or iad.Banner.BOTTOM.</translate> <br/>
 
'''alignment''': (string) <translate>whether you want ads to show top or bottom of the screen. It can be either iad.Banner.TOP or iad.Banner.BOTTOM.</translate> <br/>
Line 43: Line 44:
 
=== <translate>Examples</translate> ===
 
=== <translate>Examples</translate> ===
 
'''Example'''<br/>
 
'''Example'''<br/>
<source lang="lua">-- if the platform is iOS, load the iAd module
+
<syntaxhighlight lang="lua">-- if the platform is iOS, load the iAd module
 
if application:getDeviceInfo() == &quot;iOS&quot; then
 
if application:getDeviceInfo() == &quot;iOS&quot; then
 
require &quot;iad&quot;
 
require &quot;iad&quot;
Line 88: Line 89:
 
banner:hide()
 
banner:hide()
 
end
 
end
end</source>
+
end</syntaxhighlight>

Latest revision as of 14:28, 13 July 2023


Available since: Gideros 2012.8
Class: iad.Banner

Description


Creates an iad.Banner instance. If iAd framework is not available, this function gives an error.

The alignment and the orientation of the ad banner are defined by these 4 string constants:

<ul>
<li>iad.Banner.TOP = "top"</li>
<li>iad.Banner.BOTTOM = "bottom"</li>
<li>iad.Banner.PORTRAIT = "portrait"</li>
<li>iad.Banner.LANDSCAPE = "landscape"</li>
</ul>

And iad.Banner class dispatches these 4 events:

<ul>
<li>Event.BANNER_AD_LOADED = "bannerAdLoaded"</li>
<li>Event.BANNER_AD_FAILED = "bannerAdFailed"</li>
<li>Event.BANNER_ACTION_BEGIN = "bannerActionBegin"</li>
<li>Event.BANNER_ACTION_FINISHED = "bannerActionFinished"</li>
</ul>

When an ad banner is created, iAd will start requesting ads. Apple serves ads, and refreshes with new ads, on an automatic timer.
Apple also requires that the ad area be hidden when no ad is available to display. iAd module manages all this behavior for you automatically.

When an ad becomes available, it will be displayed on the screen, the event Event.BANNER_AD_LOADED is dispatched when one is about to be displayed,
or the event Event.BANNER_AD_FAILED is dispatched when the loading has failed. If the loading has failed, the fields event.errorCode and event.errorDescription
contains information about the failure reason.

When the user clicks on an ad, the event Event.BANNER_ACTION_BEGIN is dispatched. At this time, the user will either be taken out of your application
to view the app store (in this case event.willLeaveApplication field will be true), or they will be presented with a fullscreen advertisement to interact with,
and event.willLeaveApplication will be false. In the latter case, you may decide to pause the application until the event Event.BANNER_ACTION_FINISHED is dispatched.

 iad.Banner.new(alignment,orientation)

Parameters

alignment: (string) whether you want ads to show top or bottom of the screen. It can be either iad.Banner.TOP or iad.Banner.BOTTOM.
orientation: (string) orientation of the banner. It can be either iad.Banner.PORTRAIT or iad.Banner.LANDSCAPE.

Examples

Example

-- if the platform is iOS, load the iAd module
if application:getDeviceInfo() == &quot;iOS&quot; then
	require &quot;iad&quot;
	end

-- 4 event listeners for debug print
local function onBannerAdLoaded()
	print(&quot;banner ad loaded&quot;)
end

local function onBannerAdFailed(event)
	print(&quot;banner ad failed&quot;, event.errorCode, event.errorDescription)
end

local function onBannerActionBegin(event)
	print(&quot;banner action begin&quot;, event.willLeaveApplication)
end

local function onBannerActionFinished()
	print(&quot;banner action finished&quot;)
end

-- if iAd module is loaded and iAd framework is available, create an ad banner and then show it
local banner = nil
if iad and iad.isAvailable() then
	banner = iad.Banner.new(iad.Banner.TOP, iad.Banner.PORTRAIT)
	banner:addEventListener(Event.BANNER_AD_LOADED, onBannerAdLoaded)
	banner:addEventListener(Event.BANNER_AD_FAILED, onBannerAdFailed)
	banner:addEventListener(Event.BANNER_ACTION_BEGIN, onBannerActionBegin)
	banner:addEventListener(Event.BANNER_ACTION_FINISHED, onBannerActionFinished)
	banner:show()  -- show it because newly created banners are not visible by default
end

-- show the banner (if it exists)
function showBanner()
	if banner ~= nil then
		banner:show()
	end
end

-- hide the banner (if it exists)
function hideBanner()
	if banner ~= nil then
		banner:hide()
	end
end