appodeal sometimes not show the banner

Hi, 

I dont know why, or if this is normal, when I have the same code than the web example in my main.lua:

local function adListener( event ) if ( event.phase == "init" ) then -- Successful initialization print( event.isError ) -- Show a banner ad appodeal.show( "banner", {yAlign="bottom", placement="testPlacement"} ) --appodeal.show( "interstitial") --appodeal.show( "video") end end

The banner is show in my app the first time, but other times when I close app and reopen… the banner not show!

And when I have the code :

appodeal.show( "banner", {yAlign="bottom", placement="testPlacement"} 

In other side of code, maybe in a function when go back to menu, I NEVER get to see the banner… 

Well, this is for the banner, but for the videos is other world… I never see one video AD… I try to have the code:

appodeal.show( "video")

In all sides, and nothing… I dont know…

When I call a banner or video, should it ALWAYS show?

the behavior is different when I execute it in the local APK, or when is already published in google play?

Thanks!!!

It always shows for me and I at most I only have 3 plugin on the list. But I think there is limit of what they will show if they can’t find the app on the store.

Some questions:

  1. What country are you in?

  2. Have you tried with debug mode? It should always show an ad then. If not then you have a problem with your code.

  3. Did you sync your admob account? Most of the fill comes from admob.

  4. Did you add your Facebook placement keys although I would wait for the last minute for this since Facebook will block you if they see traffic coming from an app that wasn’t downloaded from Google Play.

  5. Did you go into the control panel and make sure you turn on backfill and any other banner provider you included under the banner tab?

Let me know how it goes.

Hi, 

1 - Spain

2- In debug mode VIDEO NOT WORKS, Banner… well… only one or two times, after not works…

3- Yes

4- Not for the moment

5- Yes…

I suspect it has to do with the permissions of the application, the code:

android = { usesPermissions = { "android.permission.INTERNET", -- "android.permission.ACCESS\_NETWORK\_STATE" { name = "android.permission.WRITE\_EXTERNAL\_STORAGE", maxSdkVersion=18}, --"android.permission.GET\_ACCOUNTS" --"android.permission.ACCESS\_COARSE\_LOCATION" --"android.permission.ACCESS\_FINE\_LOCATION" --"android.permission.ACCESS\_WIFI\_STATE" }, },

In guide, they say that we need INTERNET, ACCESS_NETWORK_STATE and WRITE_EXTERNAL_STORAGE but if I have the 3 I have error :

00:34:18.467 ERROR: validate-settings: problem loading ...\Corona Projects\FriQuiz\build.settings: 00:34:18.522 ERROR: Runtime error 00:34:18.522 ?:0: attempt to call a nil value 00:34:18.522 stack traceback: 00:34:18.522 ?: in function 'require' 00:34:18.522 ...\Corona Projects\FriQuiz\main.lua:7: in main chunk

If I comment the ACCESS_NETWORK_STATE the app is ok… I dont know… but nevermind because with this I have seen the banner works so… 

Some idea? :frowning: In the APP of mobile (no simulator) when I open the app have the “error” … “missing … WRITE_EXTERNAL_STORAGE” blablabla, but the app works… 

Thx!!

I would delete all those permissions. They are not needed. I am using the beta version of the plugin and I init appodeal like this:

appodeal.init( adProvider.adListener, { appKey=xxxxx, disableWriteExternalPermissionCheck=true, testMode=false, hasUserConsent=false } )

This is what my builds settings look like:

-- Appodeal ['plugin.appodeal.beta.base'] = { publisherId = 'com.coronalabs', supportedPlatforms = { iphone=true, android=true } }, ['plugin.appodeal.beta.FacebookAudience'] = { publisherId = 'com.coronalabs', supportedPlatforms = { iphone=true, android=true } }, ['plugin.appodeal.beta.AmazonAds'] = { publisherId = 'com.coronalabs', supportedPlatforms = { iphone=true, android=true } }, ['plugin.appodeal.beta.GoogleAdMob'] = { publisherId = 'com.coronalabs', supportedPlatforms = { iphone=true, android=true } }, ['plugin.appodeal.beta.AppLovin'] = { publisherId = 'com.coronalabs', supportedPlatforms = { iphone=true, android=true } }

And my user permissions most are not related to Appodeal:

usesPermissions = { "android.permission.INTERNET", "com.android.vending.BILLING", "com.android.vending.CHECK\_LICENSE", "com.google.android.finsky.permission.BIND\_GET\_INSTALL\_REFERRER\_SERVICE" },

Hope this helps. 

Hi, Thx!!

With your code I can show a banner if I put the code in init appodeal, but how can I show and hide banners in some sides of the app?

I have too a  appodeal.show( “video” ) but never show the video…

Thx!!

PD: Well, I close the app and reopen, and again not show banner… fuck, i dont know why, I install APP and the first time not problem, but reopen and not works… why!! :frowning:

to hide I just use:

 appodeal.hide( "banner" )

and to show again:

appodeal.show( "banner", { yAlign="bottom"} )

I have never used appodeal.show(“video”) and it is not documented anywhere I can find. Are you trying to show a video instead of a static interstitial? If that is the case the approach I have always used is:

appodeal.show( "interstitial" )

Then go into your Appodeal control panel -> under apps -> select your app -> click placement -> edit placement for default -> click on add settings -> interstitial type -> and select video ads. Save it and give it 20 minutes to test again.

If you want to have the ability to either show a static or a video. Go back to placement and create a new placement. Call it videoInter or staticInter and then again limit the type of interstitial. When you call this new placement call it this way:

appodeal.show( "interstitial", { placement="videoInter" } )

 or 

appodeal.show( "interstitial", { placement="staticInter" } )

There is only one other thing you should do: When you create other placement you should disable the type of ads that you are not using in those placements so that they don’t get auto-cached.

Thx! Banner not works correctly, but nevermind, interstitial is working fine, so for me its ok.

BUT!! One thing more, when the interstitial is working, after 5 secs I can close, ok, but when i push the X for close… black window and other 5 secs for new X and close.

Last problem and i will so happy :smiley:

thx!!

I created two videos that might help:

https://youtu.be/pqcL9xpk3TM - Show a banner ad.

https://youtu.be/HeuBuTdvbRU - Show an interstitial.

Two more videos that finally answer the question you asked:

https://youtu.be/FBAjdUnmhwE - Using placements to show either static or video interstitial.

https://youtu.be/ektKbl479hI - Using placements to show daily reward and more frequent rewards.

many thanks to @agramonte for all the instructive help regarding appodeal!  very kind of you to share with all of the corona community.

@cyberparkstudios I try.

Wow!! thx!! You are a genius: D

It always shows for me and I at most I only have 3 plugin on the list. But I think there is limit of what they will show if they can’t find the app on the store.

Some questions:

  1. What country are you in?

  2. Have you tried with debug mode? It should always show an ad then. If not then you have a problem with your code.

  3. Did you sync your admob account? Most of the fill comes from admob.

  4. Did you add your Facebook placement keys although I would wait for the last minute for this since Facebook will block you if they see traffic coming from an app that wasn’t downloaded from Google Play.

  5. Did you go into the control panel and make sure you turn on backfill and any other banner provider you included under the banner tab?

Let me know how it goes.

Hi, 

1 - Spain

2- In debug mode VIDEO NOT WORKS, Banner… well… only one or two times, after not works…

3- Yes

4- Not for the moment

5- Yes…

I suspect it has to do with the permissions of the application, the code:

android = { usesPermissions = { "android.permission.INTERNET", -- "android.permission.ACCESS\_NETWORK\_STATE" { name = "android.permission.WRITE\_EXTERNAL\_STORAGE", maxSdkVersion=18}, --"android.permission.GET\_ACCOUNTS" --"android.permission.ACCESS\_COARSE\_LOCATION" --"android.permission.ACCESS\_FINE\_LOCATION" --"android.permission.ACCESS\_WIFI\_STATE" }, },

In guide, they say that we need INTERNET, ACCESS_NETWORK_STATE and WRITE_EXTERNAL_STORAGE but if I have the 3 I have error :

00:34:18.467 ERROR: validate-settings: problem loading ...\Corona Projects\FriQuiz\build.settings: 00:34:18.522 ERROR: Runtime error 00:34:18.522 ?:0: attempt to call a nil value 00:34:18.522 stack traceback: 00:34:18.522 ?: in function 'require' 00:34:18.522 ...\Corona Projects\FriQuiz\main.lua:7: in main chunk

If I comment the ACCESS_NETWORK_STATE the app is ok… I dont know… but nevermind because with this I have seen the banner works so… 

Some idea? :frowning: In the APP of mobile (no simulator) when I open the app have the “error” … “missing … WRITE_EXTERNAL_STORAGE” blablabla, but the app works… 

Thx!!

I would delete all those permissions. They are not needed. I am using the beta version of the plugin and I init appodeal like this:

appodeal.init( adProvider.adListener, { appKey=xxxxx, disableWriteExternalPermissionCheck=true, testMode=false, hasUserConsent=false } )

This is what my builds settings look like:

-- Appodeal ['plugin.appodeal.beta.base'] = { publisherId = 'com.coronalabs', supportedPlatforms = { iphone=true, android=true } }, ['plugin.appodeal.beta.FacebookAudience'] = { publisherId = 'com.coronalabs', supportedPlatforms = { iphone=true, android=true } }, ['plugin.appodeal.beta.AmazonAds'] = { publisherId = 'com.coronalabs', supportedPlatforms = { iphone=true, android=true } }, ['plugin.appodeal.beta.GoogleAdMob'] = { publisherId = 'com.coronalabs', supportedPlatforms = { iphone=true, android=true } }, ['plugin.appodeal.beta.AppLovin'] = { publisherId = 'com.coronalabs', supportedPlatforms = { iphone=true, android=true } }

And my user permissions most are not related to Appodeal:

usesPermissions = { "android.permission.INTERNET", "com.android.vending.BILLING", "com.android.vending.CHECK\_LICENSE", "com.google.android.finsky.permission.BIND\_GET\_INSTALL\_REFERRER\_SERVICE" },

Hope this helps. 

Hi, Thx!!

With your code I can show a banner if I put the code in init appodeal, but how can I show and hide banners in some sides of the app?

I have too a  appodeal.show( “video” ) but never show the video…

Thx!!

PD: Well, I close the app and reopen, and again not show banner… fuck, i dont know why, I install APP and the first time not problem, but reopen and not works… why!! :frowning:

to hide I just use:

 appodeal.hide( "banner" )

and to show again:

appodeal.show( "banner", { yAlign="bottom"} )

I have never used appodeal.show(“video”) and it is not documented anywhere I can find. Are you trying to show a video instead of a static interstitial? If that is the case the approach I have always used is:

appodeal.show( "interstitial" )

Then go into your Appodeal control panel -> under apps -> select your app -> click placement -> edit placement for default -> click on add settings -> interstitial type -> and select video ads. Save it and give it 20 minutes to test again.

If you want to have the ability to either show a static or a video. Go back to placement and create a new placement. Call it videoInter or staticInter and then again limit the type of interstitial. When you call this new placement call it this way:

appodeal.show( "interstitial", { placement="videoInter" } )

 or 

appodeal.show( "interstitial", { placement="staticInter" } )

There is only one other thing you should do: When you create other placement you should disable the type of ads that you are not using in those placements so that they don’t get auto-cached.

Thx! Banner not works correctly, but nevermind, interstitial is working fine, so for me its ok.

BUT!! One thing more, when the interstitial is working, after 5 secs I can close, ok, but when i push the X for close… black window and other 5 secs for new X and close.

Last problem and i will so happy :smiley:

thx!!

I created two videos that might help:

https://youtu.be/pqcL9xpk3TM - Show a banner ad.

https://youtu.be/HeuBuTdvbRU - Show an interstitial.

Two more videos that finally answer the question you asked:

https://youtu.be/FBAjdUnmhwE - Using placements to show either static or video interstitial.

https://youtu.be/ektKbl479hI - Using placements to show daily reward and more frequent rewards.

many thanks to @agramonte for all the instructive help regarding appodeal!  very kind of you to share with all of the corona community.

@cyberparkstudios I try.