No Ads Available (Chartboost)

When I try to load Interstitials I’m consistently getting this Message. The ad is not live yet. I’m in NYC.

May 13 10:06:24 iPad TweetWordIOS1.8[200] <Warning>: data:{“errorCode”:6,“location”:“Default”,“errorMsg”:“No ads available”}

The message is pretty straight forward. There are no ads available. I’m not sure how Chartboost handles low fill situations. Is your app live? Is it in test mode? Are you asking for live ads in a non-live app?

Rob

This was what Chartboost sent me today:

I hope you are well. Unfortunately at this time, we are not actively supporting the Corona plugin as our mobile resources are focused on adding new features to our native (iOS/Android) and Unity SDKs. All of the SDKs that we currently officially support are listed here.

Feel free to let me know if you have any additional questions at all.

Are there any new apps seeing the same problems with Chartboost?

Chartboost does not support the Corona plugin, this is a plugin we build and maintain. However, we can’t control when Chartboost decides to provide ads. It would be helpful if you answered the questions I asked above.

Also, do you get test mode ads?

Rob

I tried turning test ads on and got nothing.    

Again, Even while testing Chartboost used to give me reward ads/test ads. That’s why I’m curious what others are seeing.

Are you sending the “has consent” flag as true? Chartboost will not send any ads if the user does not provide consent.

Thanks. Where is this flag? I don’t see where to set it in Chartboost.

You control it from the .init() call:   http://docs.coronalabs.com/plugin/chartboost/init.html

Rob

When I add flags to the init for Consent, I get the error below:

chartboost.init( ChartboostListener, { appId=“587aaae304b0161ZZZZZ”, appSig=“2ff498d4a7a4d8c924ad9176ZZZZ”,true,"",true } )

default 13:01:51.000000 -0500 TweetWordIOS1.92  ERROR: /Volumes/NO NAME/TweetWordIOS1.92/start.lua:388: chartboost.init(listener, options), Invalid option ‘1’

Thanks

chartboost.init( ChartboostListener, { appId="YOUR\_CHARTBOOST\_APP\_ID", appSig="YOUR\_CHARTBOOST\_APP\_SIGNATURE", hasUserConsent=true, autoCacheAds=true, customId="" } )

At least that’s what I’m assuming your two “true” values and your empty string ("") are for. You’re passing table of parameters and each is a key-value pair. You can’t just have loose true, false or string values floating in there.

Rob

Yep,  after I fixed my bonehead mistake with key value pairs the ads are back on, so the issue was the consent flag… 

 

Thanks guys. Last question is, how do I handle that flag for GDR. Just always leave it as true.

 

Thank you.

If you have no app users in the EU then you don’t need to do anything. If your app is for sale worldwide and someone in the EU can get it, then you have to, at least on the first run of the app, present a dialog to the users letting them know what services you use that collects private data and ask for permission/consent to use this feature. This consent should be off by default so the user has to opt-in to choose it. If the user says no, then send false as the value to hasUserConsent, if they opt-in, send true. You should also save this choice locally so you don’t have to ask them again. You should also have a settings screen so they can change their mind.

The trick with Chartboost is if the user disagrees and doesn’t give consent, you get no ads. Other providers like AdMob at least give you non-targeted ads so you make something and have some ads to show. You may want to have a backup ad provider and when you get a “No ads available” message, then use the other provider.

Some people will try to detect if the user is in the EU and only ask for consent from those users, but people go on vacation, can set the locale on the phone to be somewhere else, use a VPN or other technology to make the accuracy of determining if they are an EU customer or not hard. 

Rob

Thanks!

0_o

There is no fool-proof way to know if an app user is a citizen of the EU or countries that GDPR governs. Making blanket decisions on if you’re a EU user or not just isn’t safe. Secondly, GDPR is an “opt-in” requirement, not an “opt-out”. That means the default behavior is to protect the end-users private data and only they can choose to say yes to allowing data collection. If Chartboost made the default true, then it would be against the spirit of the law. I’m sure, we could override the default behavior, but we can’t detect with accuracy if a user is a EU citizen and we should not go against the spirit of the law and make users have to opt-out. 

Rob

The message is pretty straight forward. There are no ads available. I’m not sure how Chartboost handles low fill situations. Is your app live? Is it in test mode? Are you asking for live ads in a non-live app?

Rob

This was what Chartboost sent me today:

I hope you are well. Unfortunately at this time, we are not actively supporting the Corona plugin as our mobile resources are focused on adding new features to our native (iOS/Android) and Unity SDKs. All of the SDKs that we currently officially support are listed here.

Feel free to let me know if you have any additional questions at all.

Are there any new apps seeing the same problems with Chartboost?

Chartboost does not support the Corona plugin, this is a plugin we build and maintain. However, we can’t control when Chartboost decides to provide ads. It would be helpful if you answered the questions I asked above.

Also, do you get test mode ads?

Rob

I tried turning test ads on and got nothing.    

Again, Even while testing Chartboost used to give me reward ads/test ads. That’s why I’m curious what others are seeing.

Are you sending the “has consent” flag as true? Chartboost will not send any ads if the user does not provide consent.