CoronaLabs please look - Prevent AdMob Interstitial to fire mid game

You should have gotten an email with the bug number in it.  I really can’t go to engineering with out one.

Rob

http://docs.coronalabs.com/daily/plugin/ads-admob-v2/isLoaded.html

http://docs.coronalabs.com/daily/plugin/ads-admob-v2/load.html

Two new apis have been added to the admob-v2 plugin.

ads.isLoaded() and ads.load().

excellent !  :smiley:

awesome! :slight_smile:

q:  does isLoaded() automatically reset after a show()?

Glad I renewed!

Keep up the good work!

Ahh, Great news at last!

Thank you   dchan  and anyone who helped making this feature implementation and bug fix a reality!

  :slight_smile:

I just finished an app using current admob plugin and managed to switch between interstitial and banner when I wanted.

Hi,

Unfortunately the load() function doesn’t seem to support the testMode parameter. This is causing actual ads to be shown when testing or debugging. Can you please include support for the testMode parameter passed to the load() function?

Thanks!

Have another question:

If both banner and interstitial are being implemented in admob in the same app, should init be called twice, once for each type of banner?

I’m trying to implement ads.isLoaded() and ads.load() but on Colona Simulator I see a following error: “attempt to call field load (a nil value)”.

On Android device this seems don’t work also.

Tested it with latest daily build (2339), and with "“CoronaProvider.gameNetwork.google” plugin set in the build.settings file.

It sounds to me like you’re trying to load the Google Play Game Services plugin, not the AdMob V2 plugin which is known as Google Play Services.  A subtle but important difference.  See:

http://docs.coronalabs.com/plugin/ads-admob-v2/index.html

and make sure you’re grabbing the plugin code from that page.

Rob

My build settings seems to be good:

plugins =

{

[“plugin.google.play.services”] =

{

publisherId = “com.coronalabs”,

},

},

My code:

local ads = require "ads"; local idAdmobIn="xxxxx"; local function adListener( event ) local msg = event.response if event.isError then print("errInt: "..msg) end end ads.init( "admob",idAdmobIn, adListener ) function adMob(mode) if mode==1 then ads.load("interstitial", { appId = idAdmobIn}) elseif ads.isLoaded("interstitial") then ads.show( "interstitial", { x=0, y=0, appId = idAdmobIn } ) end end

Checked it on Windows and MacOS , and results are the same (“attempt to call field load (a nil value)”)

What happens if you try it on a device?

Rob

Null value error is displayed only on simulator (on both ads.load/isLoaded invokes).

On Android device interstitials are displayed correctly, though after my tests, I see that only first Interstitial is showed immediately after button click, but next Interstitials are displayed with few second delays… I see that isLoaded is always TRUE after first Interstitial load (then load is’t  more invoked)…

This has been fixed. Load function now accepts the testMode parameter

According the the documentation load() supports testMode, however in reality (on iOS) a live Interstitial is shown when show() is called.

I’m not sure about Android as I haven’t tested it yet.

I have just finished another app using the original admob plugin and switches between banner and interstitial whenever I want, just using the orginal fIx using two ids and hide, hide then show and works every time.

When you say “original admob plugin”, do you mean Admob V1 or V2?

Just the first one. Never knew it to be called V1. But I guess you could call it that.

Yeah, V1 was my name for it  :).

The only issue I have with that version is that Google will stop serving ads to it after Aug 31st this year.