iAd is not an appropriate use of Advertising Identifier. It looks as if the ads appearing are iAds.

No.  It means paste this code:

    plugins =     {         ["CoronaProvider.ads.iads"] =         {             publisherId = "com.coronalabs",             supportedPlatforms = { iphone=true, ["iphone-sim"]=true },         },     }, 

in your build.settings exactly as is.  It should be child table of the settings = {} table, i.e. a peer to iphone, android, orientation, etc.

You only use your AppID when calling ads.init().

Rob

hey rob, cool so like this (omitted the rest, just down to orientation so it’s not super ultra long

settings = { plugins = { ["CoronaProvider.ads.vungle"] = { publisherId = "com.vungle",}, ["CoronaProvider.ads.iads"] = { publisherId = "com.coronalabs" , supportedPlatforms = { iphone=true, ["iphone-sim"]=true }, }, ["CoronaProvider.native.popup.social"] = { publisherId = "com.coronalabs", }, ["facebook"] = { publisherId = "com.coronalabs", supportedPlatforms = { iphone = true }, }, }, orientation = { default = "portrait", --landscapeRight supported = { "portrait", } },

That looks right.

This is part of the Corona Example on ads.  Do I need to change testMode=true to testMode=false?

showAd = function( adType )

local adX, adY = display.screenOriginX, display.contentHeight

– statusText.text = “Working…”

ads.show( adType, { x=adX, y=adY, testMode=true } )

end

testMode is only a feature of inMobi.  The other ad providers don’t use this.

Rob

I went back and resubmitted my app to apple and the only thing I changed was checking the No box in iTunesConnect next to “Does this app use the Advertising Identifier (IDFA)?” Apple approved the game and it is on the app store called Catch Jack.  However, there are no ads showing up in my game.  Every time the final score window shows up there is supposed to be an ad across the top of the window. The first line in my function that shows the final score window is showAd( “banner” ) and it shows me some apple demo ads on my iPhone when I copied the developer version to my iPhone. 

Any ideas why the demo ads would show up but the real ads aren’t? 

It can take a few days for real iAd’s to appear. The same has happened to me after a release.

There’s some sort of propagation delay on Apple’s end. It’s also depending on where you live, and their available iAd inventory.

You can log in to iTunes Connect and start the iAd module. Check to see if “Live ads” is shown.

If so, there’s nothing to worry about. After a few days you’ll start to see the impression count start to increase.

Thank you ingemar.  I was just going over and found the Live Ads is showing.  This is my first app and am quite excited about it.  I have a whole series of Jittery Jack Apps that are about to go live.

Thanks everyone for all your help!

Will

Many ad providers, including iAds don’t always have the inventory to provide you the ads you expect.  The more popular your app the more likely ads will get targeted too.  If you’re running your own app,  you can tether it to your computer and use Xcode organizer to look at the console log and see if you are getting any errors or warnings like no inventory available.

Rob

I try to use iAds but, When I test in my device , I dont see any adds.

I use this:

in my build settings I have:

plugins =

{

– key is the name passed to Lua’s ‘require()’

[“CoronaProvider.ads.iads”] =

{

– required

publisherId = “com.coronalabs”,

},

 

and in my main.lua I have:

–lua

– Include the widget library

local widget = require( “widget” )

 

– The name of the ad provider.

local adNetwork = “iads”

 

– Replace with your own application ID

local appID = “com.aslanendeavors.catchjack2” = I change it with the bundle Id of my App.

 

– Load Corona ‘ads’ library

local ads = require “ads”

 

– Create a text object to display ad status

local statusText 

 

– Set up ad listener.

local function adListener( event )

– event table includes:

–  event.provider

– event.isError (e.g. true/false )

– event.response - the localized description of the event (error or confirmation message)

 

local msg = event.response

 

– just a quick debug message to check what response we got from the library

print("Message received from the ads library: ", msg)

 

if event.isError then

statusText:setFillColor( 1, 0, 0 )

statusText.text = msg

 

else

statusText:setFillColor( 0, 1, 0 )

statusText.text = msg

end

end

– Initialize the ‘ads’ library with the provider you wish to use.

if appID then

ads.init( adNetwork, appID, adListener )

end

 

– initial variables

local sysModel = system.getInfo(“model”)

local sysEnv = system.getInfo(“environment”)

 

local showAd

 

–lua

I want to see the iADs in the device.

First of all, iAds has a fairly low inventory, so not getting ads is common.  However, when you call ads.show() you should get an event triggering your call back listener… the function you called “adListener”.  You have a print in there that shows the response from the ad server so your device’s console log should have the reason why you didn’t get an ad.  You can also print out the value of event.isError and see if it’s true or false.  True means there was an error.

If you don’t know how to read the device’s console log, please read this tutorial carefully:

http://coronalabs.com/blog/2013/07/09/tutorial-basic-debugging/

Rob

I would also say that if you are using iad and get no ads then, have a back up ad network like chartboost (using Gremlin Interactive’s fine plug in) or admob or vungle, or revmob or or or or or. This will ensure if you are not getting 100% fill rate  that you take advantage of failing over to show ads that are available.

The point is you should stack your ad networks and just put them all in on submission to apple, and have logic to control which ads show what. I pull a config file from a server that basically flags what I’m running. That’s a complicated set up though, so I’d say just a bunch of if not iads then admob, if not admob then another Ad network.

Then you can just control everything from the adnetworks dashboard and your off an running. 

It’s a bit of a pain, took me a while to learn all of this but I’ve finally gotten it going :slight_smile:

hey party people

plugins =

{

– key is the name passed to Lua’s ‘require()’

[“CoronaProvider.ads.iads”] =

{

– required

publisherId = “com.coronalabs”,

},

 

 

when it says key is the name passed to lua’s require() 

 

does that mean

 

 

[“CoronaProvider.ads.iads”] = <app id here 123456789>

{

– required

publisherId = “com.coronalabs”,

},

As in, do I have o put the app id above AND in my main.lua? 

Been using corona for a few years,but never used iAd. Until today I started trying to figure it out from the iAd sample. 

Basically, all I want to know is what do I put in the build settings and what do I put in the main.lua for example.

Thanks in advance! 

-nick

No.  It means paste this code:

&nbsp;&nbsp;&nbsp; plugins = &nbsp;&nbsp;&nbsp; { &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ["CoronaProvider.ads.iads"] = &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; { &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; publisherId = "com.coronalabs", &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; supportedPlatforms = { iphone=true, ["iphone-sim"]=true }, &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }, &nbsp;&nbsp;&nbsp; }, 

in your build.settings exactly as is.  It should be child table of the settings = {} table, i.e. a peer to iphone, android, orientation, etc.

You only use your AppID when calling ads.init().

Rob

hey rob, cool so like this (omitted the rest, just down to orientation so it’s not super ultra long

settings = { plugins = { ["CoronaProvider.ads.vungle"] = { publisherId = "com.vungle",}, ["CoronaProvider.ads.iads"] = { publisherId = "com.coronalabs" , supportedPlatforms = { iphone=true, ["iphone-sim"]=true }, }, ["CoronaProvider.native.popup.social"] = { publisherId = "com.coronalabs", }, ["facebook"] = { publisherId = "com.coronalabs", supportedPlatforms = { iphone = true }, }, }, orientation = { default = "portrait", --landscapeRight supported = { "portrait", } },

That looks right.

I try to use iAds but, When I test in my device , I dont see any adds.

I use this:

in my build settings I have:

plugins =

{

– key is the name passed to Lua’s ‘require()’

[“CoronaProvider.ads.iads”] =

{

– required

publisherId = “com.coronalabs”,

},

 

and in my main.lua I have:

–lua

– Include the widget library

local widget = require( “widget” )

 

– The name of the ad provider.

local adNetwork = “iads”

 

– Replace with your own application ID

local appID = “com.aslanendeavors.catchjack2” = I change it with the bundle Id of my App.

 

– Load Corona ‘ads’ library

local ads = require “ads”

 

– Create a text object to display ad status

local statusText 

 

– Set up ad listener.

local function adListener( event )

– event table includes:

–  event.provider

– event.isError (e.g. true/false )

– event.response - the localized description of the event (error or confirmation message)

 

local msg = event.response

 

– just a quick debug message to check what response we got from the library

print("Message received from the ads library: ", msg)

 

if event.isError then

statusText:setFillColor( 1, 0, 0 )

statusText.text = msg

 

else

statusText:setFillColor( 0, 1, 0 )

statusText.text = msg

end

end

– Initialize the ‘ads’ library with the provider you wish to use.

if appID then

ads.init( adNetwork, appID, adListener )

end

 

– initial variables

local sysModel = system.getInfo(“model”)

local sysEnv = system.getInfo(“environment”)

 

local showAd

 

–lua

I want to see the iADs in the device.

First of all, iAds has a fairly low inventory, so not getting ads is common.  However, when you call ads.show() you should get an event triggering your call back listener… the function you called “adListener”.  You have a print in there that shows the response from the ad server so your device’s console log should have the reason why you didn’t get an ad.  You can also print out the value of event.isError and see if it’s true or false.  True means there was an error.

If you don’t know how to read the device’s console log, please read this tutorial carefully:

http://coronalabs.com/blog/2013/07/09/tutorial-basic-debugging/

Rob

I would also say that if you are using iad and get no ads then, have a back up ad network like chartboost (using Gremlin Interactive’s fine plug in) or admob or vungle, or revmob or or or or or. This will ensure if you are not getting 100% fill rate  that you take advantage of failing over to show ads that are available.

The point is you should stack your ad networks and just put them all in on submission to apple, and have logic to control which ads show what. I pull a config file from a server that basically flags what I’m running. That’s a complicated set up though, so I’d say just a bunch of if not iads then admob, if not admob then another Ad network.

Then you can just control everything from the adnetworks dashboard and your off an running. 

It’s a bit of a pain, took me a while to learn all of this but I’ve finally gotten it going :slight_smile: