I tried AppBrain banner ads on my app recently. I am not sure if the ads are showing properly. This is what I see in my app
![Ads in my app]https://imgur.com/a/Pqwnw6q
The add seems like a generic template whereas, their website shows different images for a sample of banner ads.
![Sample ads in AppBrain website]https://imgur.com/a/IkSvdUj
The documentation says adding the view alone will automatically call the requestAd() function
public void requestAd()
Request an ad to be fetched. If a listener was set on this banner, that listener will be notified of the result. This method is automatically called once the banner is added to the view layout, so calling it manually is optional.
However, I did call the requestAd() in the activity also
AppBrainBanner banner;
In the onCreate
banner = findViewById(R.id.appBrainAdView);
banner.requestAd();
I contacted AppBrain 4-5 days ago and didn't receive any response yet. Am I implementing the ads right?
this is Mathijs from AppBrain.
Yes you're doing it right. The extra requestAd() is not needed, and our banners can show a number of different designs. The 'generic' one that requires a click before the user sees the apps he can install is the most common one, so it's normal you're seeing that one a lot.
Related
I got an android app that show adds on different screens of this app. What I want to do is, I want to show the list of Android apps installed through my application AdMob click.
Please suggest a way to do so.
I'm using Interstitial Ads.
There is no direct way track the app install through admob ads.Specially, it is not possible if you want to track installs from banner and interstitial ads.
Though you can use this hack for native advanced ads.As native advanced ads gives you each parameter of the ad - headline, subtitle, app icon etc.
On the click event of the ad (which would redirect to the playstore in case of AppInstallAds) you can save the headline which will tell you the app name and you can track it at your own level.
public static void populateAppInstallAdView(NativeAppInstallAd nativeAppInstallAd, NativeAppInstallAdView adView) {
adView.setHeadlineView(adView.findViewById(R.id.appinstall_headline));
adView.setImageView(adView.findViewById(R.id.appinstall_image));
adView.setBodyView(adView.findViewById(R.id.appinstall_body));
adView.setCallToActionView(adView.findViewById(R.id.appinstall_call_to_action));
adView.setIconView(adView.findViewById(R.id.appinstall_app_icon));
adView.setPriceView(adView.findViewById(R.id.appinstall_price));
// Assign native ad object to the native view.
adView.setNativeAd(nativeAppInstallAd);
}
Headline set here will provide the app name.
I am fairly new to using Chartboost ads, and haven't managed to find much info regarding this.
I have written a game in which an interstitial ad and 'more apps page' ad is cached immediately when the game loads and is displayed when the user receives a game over message/clicks on show more apps button.
My question is do I have to call cacheInterstitial() and cacheMoreApps() again every time to cache a new ad whenever a previously cached add is displayed to the user, or is this handled automatically after the first time I call on the api to cache an add?
if you are not using Chartboost Autocache feature then YES you will have to call cacheInterstitial() and cacheMoreApps() again every time you display a previously cached Ad or chartboost will keep on showing same ad again and again.
To use Autocaching feature read the section 'Autocaching' in Chartboost docs.
I integrate MoPub with Android.
https://github.com/mopub/mopub-android-sdk/wiki/Banner-Integration
But the ads are not displaying, instead of that
Welcome to Mopub!
Click here to test add
You can now setup a new campaign for other adds.
How can I list ads in my app? So that it will be clicked it will be counted against my app.
Seems like your request to Mopub is being reviewed (there is probably a message in box on Marketplace tab saying so). You should wait for it to be done. However, in my case there wasn't any progress for quite a long time (about 2 weeks) until I asked for that the Mopub support. Once the request is checked you'll get ads.
When you create a new account in MoPub, Mopub automatically creates test order with that particular banner:
Welcome to Mopub!
Click here to test add
You can now setup a new campaign for other adds.
To disable this banner and add your own banners, go to https://app.mopub.com/advertise/orders/ , pause "MoPub Demo Order" and add your own orders and line items.
The system works right after the account was created, you don't need to undergo review to disable test banners or add your own banners.
Be sure to test with test ads.
This link of the MoPub documentation will show you how to use test ad id's to get an ad on every request while developing.
To make things easy for you, this is a often used solution making use of the ternary operator. This says IF development THEN use test ad id ELSE use your production ad id.
moPubView = (MoPubView) findViewById(R.id.adview);
moPubView.setAdUnitId(BuildConfig.DEBUG ? "b195f8dd8ded45fe847ad89ed1d016da" : "YOUR_PRODUCTION_BANNER_ID");
I wrote a test app to implement the admob banner using xml in the layout file. The first time I ran the application, it worked and I could see the banner. I added a second activity and I was able to switch between activities and I still can see the banner.
The following day I tried running the app again and the banner does not show. I checked the catlog and it tells me the a request for ad was succesfull but no ad was returned because my inventory is empty.
I wanted to know if this would be something normal when you are working on eclipse. Or if the banner would still show even if there are no ads in the inventory.
Thanks,
Richard.
If you get this error your code is probably correct (you say it worked before and you didn't change anything). The issue is that AdMob does not always have an ad to return to every request. You can enable the Use keyword-targeted ads and Google certified ad networks (GCANs) to improve fill rate. in AdMob app settings to increase the fill rate.
If you want to be sure your code works as intended you can set the testmode to true, if you get back an ad you can be sure your code is correct.
i just want to know if this problem is server side...or i must fix something in my code...
onFailedToReceiveAd(Ad request successful, but no ad returned due to lack of ad inventory
I'm using admob with adwhirl to show ads in my android application.
If you are getting this error, then your code is correct. The issue is that AdMob does not always have an ad to return for every request. This may happen particularly if you have just registered your AdMob publisher ID, as it takes some time and multiple requests before the new ID starts returning ads.
Another reason your fill rate may be low is that you don't have AdSense backfill enabled, or you have filtered out some ads. Check your app settings to see if that is the case.
Finally, a test you can run to see if your AdWhirl code is implemented correctly is to request a test ad. You can do this by specifying test mode in AdWhirl:
AdWhirlTargeting.setTestMode(true);
If you get back a test ad, you'll know your code is working as intended.
One of the solutions you could try:
Some times this will happened if you changed language of your Android device to exotic language (Russian for example). Try to change it back to English and AdMob will find appropriate ad for you. Or you could go to the Google Settings->Ads->Reset advertising ID
I've just found that such error is shown if your AdMob account has been banned. But it works with a test device ID.
Note that this might happen aswell if you're using (forcing) a custom width and height for the banners.
You should use the ones that DOC states:
https://developers.google.com/mobile-ads-sdk/docs/admob/intermediate#play
If you set a custom width and height like:
new AdSize( 521,300 );
It's going to reply with the error you mentioned.
I know this was from long time ago, but here's something i did which solved this problem.
1. on your admob account, click on "manage settings" in the app you've created.
2. click on "edit".
3. under "Android Package URL:" leave blank, and then save settings.
*after you'll save, it'll show this box as "market://", which is fine.
I had this problem when using Rewarded Interstitial (beta).
Changing to Rewarded solved the problem.