Jump to content

[TOPIC: topicViewTemplate]
[GLOBAL: userSmallPhoto]
Photo

How to use the Vungle listener? Does it work?
Started by LairdGames Jul 24 2013 04:53 PM

94 replies to this topic
[TOPIC CONTROLS]
Page 3 of 4 1 2 3 4
This topic has been archived. This means that you cannot reply to this topic.
[/TOPIC CONTROLS]
[modOptionsDropdown]
[/modOptionsDropdown]
[reputationFilter]
[TOPIC: post.html]
#51

sagarpawaskar

[GLOBAL: userInfoPane.html]
sagarpawaskar
  • Enthusiast

  • 33 posts
  • Corona SDK

@ingemar where do you init vungle - main or menu?



[TOPIC: post.html]
#52

ingemar

[GLOBAL: userInfoPane.html]
ingemar
  • Corona Geek

  • 2,733 posts
  • Enterprise

...on line #329 of the module I posted :-)

 

That code is automatically run when it's 'require'd in my game module.



[TOPIC: post.html]
#53

Stephen Lewis

[GLOBAL: userInfoPane.html]
Stephen Lewis
  • Contributor

  • 716 posts
  • Enterprise

Hey all you Vungle users,

 

Has anyone figured out how to use the "incentivized" ad unit type from Vungle?  It seems to require server to server communication via callbacks and a username but the docs are sparse and none of the examples I've found show how to use it. Any ideas how to harness it using Corona?  Does it require backend infrastructure or can it be accessed using Corona alone?



[TOPIC: post.html]
#54

LairdGames

[GLOBAL: userInfoPane.html]
LairdGames
  • Contributor

  • 969 posts
  • Corona SDK

This is what m doing

 

function M.show_vungle_ad()
	
		if M.ads.isAdAvailable() then
			M.ads.show( "interstitial", { isBackButtonEnabled = true } )
		
		else
	
			M.chartboost_show_ad()
		end
	end
	
	function M.functionAdListener()
		if event.type == "adStart" and event.isError then
			print("Vungle Error: ",isError)
		end
	end
	
	function M.chartboost_show_more_ad()
		if M.cb.hasCachedMoreApps() then
			local msg = "Chartboost: Loading More Apps From Cache"
		end
		print(msg)
		M.cb.showMoreApps()
		return true
	end
	
	function M.chartboost_show_ad()
		if M.cb.hasCachedInterstitial() then
			local msg = "Chartboost: Loading Interstitial From Cache"
			print(msg)
			M.cb.showInterstitial()
			
		else
			
			M.tapfortap.showInterstitial()
		
		end
		return true
	end

btw I've put them all in a separate lua file just to avoid globals.

 

@Sagarpawaskar: I am trying to use your module but I for some reason I am having problem with chartboost. for some reason it is not finding cb (nil) i am sure is because is the way i initialize the ad networks (for me Vungle, chartboost and Revmob. I am doing this in main.lua but I believe you are doing it on the game menu module. It is making me crazy! I really want to use a modular way so I do not crowed the main.lua Would you mind sharing your ad networks initialization code? Of course hide your  ad networks! That will show me maybe where my issue lies. I am still not yet clear on the use of external module using M table so I am missing something.

 

THANK YOU for any pointers :)

 

Mo

 

ps: I can see also that @ingmar has all the init code inside the adnetworks.lua? But not all functions are added to the M table?



[TOPIC: post.html]
#55

sagarpawaskar

[GLOBAL: userInfoPane.html]
sagarpawaskar
  • Enthusiast

  • 33 posts
  • Corona SDK

@Mo

I noticed that chartboost ads do not re-appear if the user closes the interstitial. So I intialize chartboost in the module itself.

local M = {}


-- you can add the below code in a separate function too, but i prefer not to.

	M.ads = require "ads"
	M.provider = "vungle"
	M.appIdVungle = "VUNGLE_ID"

	M.cbdata = require "ChartboostSDK.chartboostdata"
	M.cb = require "ChartboostSDK.chartboost"
	M.appId = "CHARTBOOST_ID"
	M.appSignature = "APP_SIG"
	M.appBundle = "BUNDLE"
	M.appVersion = "VERSION"
	
	--ADD YOUR REVMOB CODE HERE-----
	--M.tapfortap = require "plugin.tapfortap"
	--M.tapfortap.initialize("TFP_ID")
	
------------------------------------------------------------

	M.delegate = {
    shouldRequestInterstitial = function(location) print("Chartboost: shouldRequestInterstitial " .. location .. "?"); return true end,
    shouldDisplayInterstitial = function(location) print("Chartboost: shouldDisplayInterstitial " .. location .. "?"); return true end,
    didCacheInterstitial = function(location) print("Chartboost: didCacheInterstitial " .. location); return end,
    didFailToLoadInterstitial = function(location) print("Chartboost: didFailToLoadInterstitial " .. location); return end,
    didDismissInterstitial = function(location) print("Chartboost: didDismissInterstitial " .. location); return end,
    didCloseInterstitial = function(location) print("Chartboost: didCloseInterstitial " .. location); return end,
    didClickInterstitial = function(location) print("Chartboost: didClickInterstitial " .. location); return end,
    didShowInterstitial = function(location) print("Chartboost: didShowInterstitial " .. location); return end,
    shouldDisplayLoadingViewForMoreApps = function() return true end,
    shouldRequestMoreApps = function() print("Chartboost: shouldRequestMoreApps"); return true end,
    shouldDisplayMoreApps = function() print("Chartboost: shouldDisplayMoreApps"); return true end,
    didCacheMoreApps = function() print("Chartboost: didCacheMoreApps"); return end,
    didFailToLoadMoreApps = function() print("Chartboost: didFailToLoadMoreApps"); return end,
    didDismissMoreApps = function() print("Chartboost: didDismissMoreApps"); return end,
    didCloseMoreApps = function() print("Chartboost: didCloseMoreApps"); return end,
    didClickMoreApps = function() print("Chartboost: didClickMoreApps"); return end,
    didShowMoreApps = function() print("Chartboost: didShowMoreApps"); return end,
    shouldRequestInterstitialsInFirstSession = function() return true end
}

	M.cb.create{appId = M.appId,
		appSignature = M.appSignature,
		delegate = M.delegate,
		appVersion = M.appVersion,
		appBundle = M.appBundle}
	M.cb.startSession()
	
	function M.caching_Ads()
		M.cb.cacheInterstitial()
		M.cb.cacheMoreApps()
	end
	M.caching_Ads()
	
	function M.vungle_init()
		M.ads.init( M.provider, M.appIdVungle, M.functionAdListener )
	end
	
	function M.tfp_prepare_ad()
		M.tapfortap.prepareInterstitial()
	end
	
	function M.isVungleAvailable()
		if (type(M.ads.isAdAvailable) == "function") then
			return M.ads.isAdAvailable();
		end
		return false;
	end
	
	
	function M.show_vungle_ad()
	
		if M.isVungleAvailable() then
			M.ads.show( "interstitial", { isBackButtonEnabled = true } )
		
		else
	
			M.chartboost_show_ad()
		end
		return true
	end
	
	function M.functionAdListener()
		if event.type == "adStart" and event.isError then
			print("Vungle Error")
		end
	end
	
	function M.chartboost_show_more_ad()
		if M.cb.hasCachedMoreApps() then
			local msg = "Chartboost: Loading More Apps From Cache"
		end
		print(msg)
		M.cb.showMoreApps()
		return true
	end
	
	function M.chartboost_show_ad()
		if M.cb.hasCachedInterstitial() then
			local msg = "Chartboost: Loading Interstitial From Cache"
			print(msg)
			M.cb.showInterstitial()
			
		else
			
			M.tapfortap.showInterstitial()
		
		end
		return true
	end
	
	
return M

To init in main just do this

local myads = require("myAds")
myads.vungle_init()



[TOPIC: post.html]
#56

sagarpawaskar

[GLOBAL: userInfoPane.html]
sagarpawaskar
  • Enthusiast

  • 33 posts
  • Corona SDK

Just use a separate function for all the init data and call it in main. I don't think you should have any prob with that.

 

You can add everything in M table, this is more efficient in terms of memory management. I also noticed that chartboost has a small memory leak.

 

I hope that helps resolve your issue:)



[TOPIC: post.html]
#57

LairdGames

[GLOBAL: userInfoPane.html]
LairdGames
  • Contributor

  • 969 posts
  • Corona SDK

@Sagarpawaskar: You are the best! I will try it and get back to you.

 

Thank you so much for the taking the time!

 

Mo



[TOPIC: post.html]
#58

sagarpawaskar

[GLOBAL: userInfoPane.html]
sagarpawaskar
  • Enthusiast

  • 33 posts
  • Corona SDK

@Mo, do you have texture memory issues with revmob? The reason m not using it, the texture memory rises to 20 mb when I include revmob sdk in my app, have you recently encountered anything like this?



[TOPIC: post.html]
#59

LairdGames

[GLOBAL: userInfoPane.html]
LairdGames
  • Contributor

  • 969 posts
  • Corona SDK

I will check on that! I will check the current app code that is out and my new incoming app. It has been a while since I check for memory issues.

 

I will try to get back to you as soon as possible.

 

Mo



[TOPIC: post.html]
#60

sagarpawaskar

[GLOBAL: userInfoPane.html]
sagarpawaskar
  • Enthusiast

  • 33 posts
  • Corona SDK

Thank you!!



[TOPIC: post.html]
#61

LairdGames

[GLOBAL: userInfoPane.html]
LairdGames
  • Contributor

  • 969 posts
  • Corona SDK

You are welcome :)

 

Humm....Is build server down? I am getting a "Null" when try to build?

 

Mo

 

EDIT: Stupid me, I tried another app and it is building fine. It seems that my current app has some issue. Sorry about the false alert :(



[TOPIC: post.html]
#62

LairdGames

[GLOBAL: userInfoPane.html]
LairdGames
  • Contributor

  • 969 posts
  • Corona SDK

@Sagarpawaskar: Something come up and now it is getting very late. i am sorry, I promised to look into the revmob issue (memory) tomorrow and get back to you! I hope it is ok.

 

Mo



[TOPIC: post.html]
#63

sagarpawaskar

[GLOBAL: userInfoPane.html]
sagarpawaskar
  • Enthusiast

  • 33 posts
  • Corona SDK

@Mo sure no problem. I'm not in a hurry.

 

I'm not having an issue with the build server.



[TOPIC: post.html]
#64

sagarpawaskar

[GLOBAL: userInfoPane.html]
sagarpawaskar
  • Enthusiast

  • 33 posts
  • Corona SDK

@Mo, I've got the revmob thing to work now. Got rid of tapfortap...

 

TFP: 3400 impressions, 72 taps and $0. Crazy... and tech support seems to be too busy to respond on time.



[TOPIC: post.html]
#65

ingemar

[GLOBAL: userInfoPane.html]
ingemar
  • Corona Geek

  • 2,733 posts
  • Enterprise

@sagarpawaskar

Are those numbers for TapForTap or Revmob?

 

Revmob has been performing under par for the past few months for me with eCPMs between $0.2 and $0.8... ;(



[TOPIC: post.html]
#66

sagarpawaskar

[GLOBAL: userInfoPane.html]
sagarpawaskar
  • Enthusiast

  • 33 posts
  • Corona SDK

@ingemar its for tapfortap.

 

I know revmob ecpm is down recently. I'd still have their ads; tapfortap ads aren't appealing.



[TOPIC: post.html]
#67

ingemar

[GLOBAL: userInfoPane.html]
ingemar
  • Corona Geek

  • 2,733 posts
  • Enterprise

That's good to know.

How is their tap-exchange? Did you see any significant increase in installs of your own apps?



[TOPIC: post.html]
#68

MAS1

[GLOBAL: userInfoPane.html]
MAS1
  • Contributor

  • 279 posts
  • Corona SDK

@ingemar

 

I know this is going off topic...

 

... but yeah -> RevMob has been tanking for me too. $1.02 eCPM over the last 6 months but $0.49 eCPM for the last month. I hope Vungle and Chartboost can do the biz.

 

I seem to recall Otter Studios getting around $50-$70 per day on 40000 or so daily impressions with RevMob (if my memory serves me correctly). Would be interested to know what their eCPM is these days... (and those of other developers but that's another thread!)

 

Eiswuxe (a fellow Corona developer) does exceptional numbers with RevMob but that's an exceptional case.

 

Best,

 

Martin.

 

PS Almost forgot. To make matters worse, I've disabled gambling, religion and dating and yet RevMob keep serving up the useless William Hill app. Bring in AdColony, Heyzap and PlayHaven and "The Circle Is Now Complete" as Darth would say!

 

PPS Fair play to Corona on the Monetization front - things have certainly improved a lot :-)



[TOPIC: post.html]
#69

sagarpawaskar

[GLOBAL: userInfoPane.html]
sagarpawaskar
  • Enthusiast

  • 33 posts
  • Corona SDK

@ingemar 0 installs.



[TOPIC: post.html]
#70

LairdGames

[GLOBAL: userInfoPane.html]
LairdGames
  • Contributor

  • 969 posts
  • Corona SDK

@sagarpawaskar

 

FIRST and foremost, thank you so much for sharing your adnetworks code. It works like a charm! So far no problem.

 

In term of Revmob and leaks, I am not completely sure yet but a quick test with my upcoming app with and without revmob enabled (commented revmob requires..) I cannot really see any difference. Please keep in my mind that I must some leak in my app but nothing like 20 meg. My max texture is 13 Meg when the game is running. It then goes back to 5-6 meg (not completely at the same value but close enough)

 

I will try with my older app and see since I amd pretty that app did not have much leaks. I still need to clean up my current upcoming app.

 

I will keep you posted on this. I see that you decided to switch to Revmob. Do you still see that big leak? Yes I am not having much success with Revmob these days. Revenue is way down this month. That is why I am adding Vungle and Chartboot. I think with these 3 ad networks, we should be covered...I hope :)

 

THANKS again.

 

Mo



[TOPIC: post.html]
#71

sagarpawaskar

[GLOBAL: userInfoPane.html]
sagarpawaskar
  • Enthusiast

  • 33 posts
  • Corona SDK

@Mo you're welcome.

 

I think you missed out my previous reply to you. I got revmob to work without any texture issues. So don't check it for memory leaks. Thank you!

 

Revmob ads are much better compared to tapfortap. ecpm may have dropped but I guess something is better then nothing.



[TOPIC: post.html]
#72

LairdGames

[GLOBAL: userInfoPane.html]
LairdGames
  • Contributor

  • 969 posts
  • Corona SDK

LOL! It looks I did miss that. I am still happy that you made it work. Yes Revmob has been down recently but I am hoping it will get better soon. I think having 3 ad networks will help smooth out the ad revenues. The good news is that we can turn on/off all these ad networks from their dashboards...

 

Thanks a lot again.

 

Mo



[TOPIC: post.html]
#73

sagarpawaskar

[GLOBAL: userInfoPane.html]
sagarpawaskar
  • Enthusiast

  • 33 posts
  • Corona SDK

It feels quite comforting with 3 ad networks in place, you don't have to worry about fill rates anymore.

 

Also vungle ads are smooth and appealing, you just can't ignore them. User experience isn't compromised.

 

 

Sagar



[TOPIC: post.html]
#74

LairdGames

[GLOBAL: userInfoPane.html]
LairdGames
  • Contributor

  • 969 posts
  • Corona SDK

I agree. I am actually sometime eager to see what video Vungle is going to show next! Most of them are very compelling! I will assume our customers will enjoy them too:) Cheers. Mo

[TOPIC: post.html]
#75

ingemar

[GLOBAL: userInfoPane.html]
ingemar
  • Corona Geek

  • 2,733 posts
  • Enterprise

I've had an app released for about a week with the new Vungle plugin and it's performing on average at around $6 eCPM (with a highest eCPM of $16) which is very good.

I also included Chartboost to complement Revmob, and Charboost is currently performing at an average of $4 eCPM.

 

So far so good :-)




[topic_controls]
Page 3 of 4 1 2 3 4
 
[/topic_controls]