Jump to content

[TOPIC: topicViewTemplate]
[GLOBAL: userSmallPhoto]
Photo

KIDOZ Banners
Started by antari200 Jul 11 2018 08:39 AM

9 replies to this topic
[TOPIC CONTROLS]
[/TOPIC CONTROLS]
[modOptionsDropdown]
[/modOptionsDropdown]
[reputationFilter]
[TOPIC: post.html]
#1

antari200

[GLOBAL: userInfoPane.html]
antari200
  • Observer

  • 13 posts
  • Corona SDK

I'm trying to implement ads from KIDOZ into our Corona project.

 

I've managed to do interstitials and rewarded video just fine, but banners won't display.  I checked on device, and when I call:

 

kidoz.load( "banner", { adPosition = "top" } );

 

I get this in my logs:

 

WARNING: kidoz.load(adType, options), adType 'banner' not loaded

 

I'm building for Android, too, which should support KIDOZ banners if I'm not mistaken.  Using Corona build 3318.



[TOPIC: post.html]
#2

antari200

[GLOBAL: userInfoPane.html]
antari200
  • Observer

  • 13 posts
  • Corona SDK

Fixed that issue.  Was trying to pass in the position of the banners on .show instead of .load, and it spat out that weird error.

 

However, now that I'm getting banners working, I'm noticing the banners stay in whatever position I first call them into.  So for instance, on startup, I'll call a banner ad on the top of the main menu.  From then on, even if I pass "bottom" like so:

 

kidoz.load( "banner", { adPosition = "bottom" } );

 

It'll still show banners on the top of screen.  And vice versa as well, if I start out at the bottom, banners will always display on the bottom and never switch to the top if I instead pass "top" into the call.  I replicated both of these events on device, and I'm positive I am passing the correct values into the method.  I'm also calling kidoz.hide("banner"); before each load call.



[TOPIC: post.html]
#3

agramonte

[GLOBAL: userInfoPane.html]
agramonte
  • Contributor

  • 824 posts
  • Corona SDK

Call kidoz.hide("banner"); before calling the show again. That sort of work the last time I tested it.



[TOPIC: post.html]
#4

antari200

[GLOBAL: userInfoPane.html]
antari200
  • Observer

  • 13 posts
  • Corona SDK

kidoz.hide("banner");

 

I tried calling it before loading an ad.  I tried calling it before showing an ad.  I tried calling it before both loading AND showing an ad.  still will not change positions once its initial position has been set.

 

And why not, for science's sake, I tried never even calling .hide to begin with.  But yeah, that also changes nothing.

 

Admob more or less follows the same structure as the lua for the kidoz plugin, and with Admob I never had a problem switching a banner ad from top to bottom or vice versa.

 

 

Edit - upon furthest testing, I'm finding that the hide function doesn't work at all.  This is why the banner can't move.  If I call a banner ad onto the scene, and try hide()-ing it in the next scene, it stays there instead of being removed.  This is kind of a big deal, I'd think, since this means that trying to hide the ads when, say, the user purchases an ad removal pack is impossible.  At least, currently.



[TOPIC: post.html]
#5

antari200

[GLOBAL: userInfoPane.html]
antari200
  • Observer

  • 13 posts
  • Corona SDK

Also can't seem to get ads to show at all on iOS.

 

Whenever I call load or show for the ads after initialization, I get this warning:

 

 -[WKWebViewConfiguration setMediaTypesRequiringUserActionForPlayback:]: unrecognized selector sent to instance

 

Would be lovely to get some assistance on these issues.

 

 

Edit- Also, when ads are failing to show on iOS device, the callback function isn't being invoked.  This makes me think there's something going wrong while the request is being set up, but before it is actually sent.



[TOPIC: post.html]
#6

Tim Light

[GLOBAL: userInfoPane.html]
Tim Light
  • Observer

  • 13 posts
  • Corona Staff

Hi, 

I'm trying to reproduce your steps using Corona SDK 2018.3318 and 2018.3335 and this code works well for me:
 

local kidoz = require( "plugin.kidoz" )

local function adListener( event )

    if ( event.phase == "init" ) then  -- Successful initialization
        print( event.provider )
        kidoz.load( "banner", { adPosition="bottom" } )
    elseif ( event.phase == "loaded" ) then 
        print( event.type )   
        kidoz.show( "banner" )
    end
end

-- Initialize the KIDOZ plugin
kidoz.init( adListener, { publisherID="", securityToken="" } )

There is no problem for me to change params from "bottom" to "top". 

Also, kidoz.hide() function works well.

 

Best regards,
Tim



[TOPIC: post.html]
#7

antari200

[GLOBAL: userInfoPane.html]
antari200
  • Observer

  • 13 posts
  • Corona SDK

The code I'm working with is based off the documentation, so the startup/initialization isn't the problem I'm having, and the code I have is extremely similar to what you showed me.  Thing is, once I see banners load on device, and hit a button to transition to a new scene where I'm calling the hide function for the banners, the banners remain.

 

I'm also using int's as well as banners, not sure if that could be causing an issue.  But I'm literally calling banners, seeing them on device, and then calling hide the next scene and they're not being hidden.  I even tried updating to 3335 and still nothing.  I'll need a bit more to go on than "hide works well," since it's not working for me.

 

Edit- decided to upload my module, figured it'd help.  

Attached Files



[TOPIC: post.html]
#8

Tim Light

[GLOBAL: userInfoPane.html]
Tim Light
  • Observer

  • 13 posts
  • Corona Staff

I'm trying to reproduce your steps with three scenes, and that is my result:
 
1. First I loaded banner on the top of the main screen
2. Then I hid banner in the next - game scene - and it's hid
3. After this, I'm going to the main scene, and there are no banners at all after hiding function
 
Also, I was trying to add another banner (bottom) in the next scene, and there is no result. The banner shows on the top, like in the main scene.
 
In conclusion, I think that hiding function works well. But after calling in one scene - you wouldn't be able to see banners before a game will be a relaunched.
I did it with Android 8.0 with Corona SDK 2018.3335, 2018.3318
 
I will let know team about this problems. 
 
Best regards,
Tim


[TOPIC: post.html]
#9

antari200

[GLOBAL: userInfoPane.html]
antari200
  • Observer

  • 13 posts
  • Corona SDK

While I'm glad I helped find a different issue with this plugin, I'm hoping that fixing that somehow ends up fixing the hide issue that I'm experiencing since I still can't get it working.  

 

I thought maybe because I was showing an interstitial on the next scene, it was somehow interfering with the capability of hide(), but I tried removing the interstitial call and the banner still doesn't go away when calling the hide method.  

 

Procedure:

 

-App starts up

-Ads initialize

-On the 'init' event callback, load both an int and a banner ad

-On the first scene, call forth a banner ad

-Banner ad displays

-Tap button to transition to new scene

-Hide method is called on the create() function of new scene

-Banner remains

 

And the thing is, it's the same structure as code I use for Admob, except for a few KIDOZ-specific tweaks and changes,  IE calling kidoz.hide("banner") instead of admob.hide().  Yet I haven't had this issue with the Admob plugin, despite having the same structure.



[TOPIC: post.html]
#10

Tim Light

[GLOBAL: userInfoPane.html]
Tim Light
  • Observer

  • 13 posts
  • Corona Staff

Hello, I'm glad to tell this issue with kidoz should be gone. Our engineers just fixed it out!
Now we need you to test a new version of kidoz to know if there anything else on what we can pay on attention from our side.
 
Best regards,
Tim



[topic_controls]
[/topic_controls]