RevMob Plugin Library not available for this platform

Hello ,

I just tried using RevMob plugin, but I keep getting this warning and no ads is visible on my simulator. I referred the documentation exactly and still I’m facing this issue. Can someone please tell me what might be the problem.

Regards,

Jiten

Can you post you build.settings file please?

 settings = { plugins = { ["plugin.revmob"] = { publisherId = "com.coronalabs", supportedPlatforms = { iphone=true, android=true } }, }, orientation = { default = "portrait", supported = { "portrait", "portraitUpsideDown" }, }, iphone = { plist = { CFBundleIconFile = "Icon.png", CFBundleIconFiles = { "Icon.png", "Icon@2x.png", "Icon-72.png", }, }, android = { versionCode = "1" }, androidPermissions = { "android.permission.ACCESS\_FINE\_LOCATION", "android.permission.INTERNET" }, } }

This is my build.lua 

Almost none of the Plugins we offer for ads will show in the simulator. Please test on device.

Rob

Thanks Rob !! U are right the plugin doesn’t work on simulator but it does on device.

I tried using all typed of ads but I could load only Banner. However, video and interstitial ads don’t get loaded. 

This is my banner code

placementIDB = "57070a7c6f46b5110b1421a9" function adListenerB( event ) if ( event.phase == "init" ) then -- Successful initialization -- Load a RevMob ad revmob.load( "banner", placementIDB ) elseif ( event.phase == "loaded" ) then -- The ad was successfully loaded -- Show the ad revmob.show( placementIDB, { yAlign="top" } ) end end revmob.init( adListenerB, { appId="57070a7c6f46b5110b1421a7" } )

This is my Video / Interstitial Code

placementIDV = "57070a7c6f46b5110b1421b1" function adListenerV( event ) if ( event.phase == "init" ) then -- Successful initialization -- Load a RevMob ad revmob.load( "interstitial", placementIDV ) elseif ( event.phase == "loaded" ) then -- The ad was successfully loaded -- Show the ad revmob.show( placementIDV, { yAlign="center" } ) end end revmob.init( adListenerV, { appId="57070a7c6f46b5110b1421a7" } )

This is the code I use to remove banner loaded in previous screeen

 Runtime:removeEventListener( "enterFrame", adListenerB ) revmob.hide( placementIDB )

Currently banner is displayed on first screen and I want video after game over.

I’m unable to load banner again after game over and also I’m unable to display video ad. Can you please help me out with this.

We are looking into it.

Where are you getting the placement id’s from? They don’t look right to me.

For instance, my test video placement id is: 56e2de28025be6a815abfff8

Media_Details.png

Placement_Details.png

57070a7c6f46b5110b1421b1

57070a7c6f46b5110b1421a9

These are my placement ID’s and I’m taking exactly from where u have indicated.

And just to be 100% sure, your definitely using the right placement ids for the platform? iOS placement ids won’t work on Android and vice versa.

I ask as I haven’t seen these issues myself.

Also, what error message do you have returned to the listener when the interstitial/video ad fails to load? It might just be a simple case of no fill. 

I have cross checked that relative placement ID’s are used. I don’t get any error but neither I see any video ads loading.

Given the code snippet you posted above, you won’t see the error, as you’re only listening for two events.

Try this:

function adListenerV( event )     for k, v in pairs(event) do         print(k, ":", v)     end end   revmob.init( adListenerV, { appId="57070a7c6f46b5110b1421a7" } )

I also can’t get the plugin to work (show any test ads). After calling init I call show and get: “RevMob session was not started”

Well sessions are supposed to be started when you call revmov.init() but it’s advised to call it manually when you resume from being suspended.

What happens if you try to call it directly?
 

Rob

It’s always the same. I tried some variations and noticed the following error in the console now: “ERROR: THE APP is depending on legacy on-demand authorization, which is not supported for new apps”

Hello there.

You should receive a “sessionStarted” event shortly after the init event.

Are you not receiving that event? I presume your device has internet connectivity?

Would you mind posting some more info to allow us to assist you further please?

  1. device/os details too please? (eg. Nexus 4, android 5.1.1)

  2. Your build.settings file

  3. The code you are using to init, load and show revmob ads.

Thank you

EDIT:

Also here is a sample you can try: https://dl.dropboxusercontent.com/u/28484098/RevMobSample.zip

Just add your app id and placement ids where indicated in the code.

Thx!

  1. I’ve tested it on two iPads (one running iOS 6 something and one iOS 8.1)

  2. in the build.settings file I’ve included the following to the normal setup:

    … plist =             {                     NSAppTransportSecurity = { NSAllowsArbitraryLoads=true }, } … plugins={                 [“plugin.google.play.services”] =                 {                     publisherId = “com.coronalabs”,                     supportedPlatforms = { iphone=true, android=true }                 },                 [“CoronaProvider.ads.vungle”] =                 {                     publisherId = “com.vungle”                 },                 [“plugin.revmob”] =                 {                     publisherId = “com.coronalabs”,                     supportedPlatforms = { iphone=true, android=true }                 }, }

The vungle stuff is not used in the code. I also included the necessary Android settings, but because I’m testing for iOS I’ve not shown it in the code above.

  1. Here is the last code test I did:

    local revmob = require( “plugin.revmob” ) adListener = function( event )         if ( event.phase == “init” ) then  – Successful initialization             – Load a RevMob ad             revmob.load( “banner”, “PLACEMENT ID HERE”) – Banner Placement ID             – revmob.load( “video”, “PLACEMENT ID HERE”) – Video Placement ID             – revmob.load( “interstitial”, “PLACEMENT ID HERE”) – Fullscreen Ad Placement ID         elseif ( event.phase == “loaded” ) then  – The ad was successfully loaded             print( "event.type= "…event.type )             revmob.show( “PLACEMENT ID HERE”, { yAlign=“top” } )         elseif ( event.phase == “failed” ) then  – The ad failed to load             print( "event.type= "…event.type )             print( event.isError )             print( event.response )         end end revmob.init( adListener, { appId=“APP ID HERE” } ) revmob.show( “PLACEMENT ID HERE”, { yAlign=“top” } ) locationHandler=function(event)           – Check for error (user may have turned off Location Services)           if event.errorCode then             print( "Location error: " … tostring( event.errorMessage ) )           else             revmob.setUserLocationLatitude(event.latitude)             revmob.setUserLocationLongitude(event.longitude)             revmob.setUserLocationAccuracy(event.accuracy)           end           Runtime:removeEventListener( “location”, locationHandler ) end onSystemEvent=function( event )         if ( event.type == “applicationResume” ) then             – Start a new RevMob session             revmob.startSession()         end end Runtime:addEventListener( “system”, onSystemEvent ) Runtime:addEventListener( “location”, locationHandler )

I just checked your sample and it is working fine… so I guess I have to go through it and find what I did wrong here.

Thanks again!

I was not able to get the event.phase == “init” listener info. Instead I’m looking now for event.phase == “sessionStarted” and it works.

Good catch. The init event was not being dispatched properly on iOS.

This issue has been fixed and will be available within 30mins ~ 1hour from the time of this post.

Happy coding :slight_smile:

Seems like this is my day :wink:

Thank you very much for your fast help here!