iAd not working on iPad - iphone

I made an iPhone Application which uses iAd. On the iPhone Simulator and the Device it works fine. It already is on the App Store.
Today, one of my customers told me that iAd is not showing up on the iPad. So I build my app on the iPad Simulator and it is not showing up, while the iPhone Simulator / iPhone Device work like expected.
I never test which device it is before displaying something, so this can not be the error.
This one does not show up any error: - (void)bannerView:(ADBannerView *)banner didFailToReceiveAdWithError:(NSError *)error
Any ideas?

If you want to use iAd, you pretty much need to be a universal app. My iPhone-only iAd app when run on an iPad in compatibility mode (on the simulator or on a real iPad) would call bannerViewDidLoadAd but then displayed a blank space instead of an ad. The Apple "iAd Implementation Best Practices" doc says:
Create Universal Apps
To ensure your app is capable of displaying iAd banners for all your users,
make sure you’ve developed a universal app that supports all possible devices.
**iPhone apps running in compatibility mode on iPad will not display a test ad
in development or live ads in deployed apps.**
https://developer.apple.com/library/ios/technotes/tn2264/_index.html

I had a similar problem. The only solution for me was to make the application universal. Once the application was universal the iAds start working.
You might notice that even some of applications from iAds suite form Apple did not work. And they mention somehting in this regard in their description here:
http://developer.apple.com/library/ios/#samplecode/iAdSuite/Introduction/Intro.html
The BasicBanner and ContainerBanner are configured to support both iPhone and iPad idioms, the TabbedBanner and NavigationBanner to support only the iPhone idiom, and the SplitViewBanner to support only the iPad idiom.
The only difference I have found was the universal vs. iPhone app settings (target->SUmmary->Device combobox).
Hoever, if I remember correctly, my - (void)bannerView:(ADBannerView *)banner didFailToReceiveAdWithError:(NSError *)error was called. The error was saying something about that there is no available iAds.
Also, I tried only on iOS5 (both simulator and device).
Hope this will help you a little ;)
Update: Also check this SO question in case you are using some older SDK:
Is iAds not available for iPad apps?

As an alternative answer, which just worked for me... because I forgot about it. I had set Fill Rate of iAds in the Settings/Developer page to 0% some long time ago... DOOH!
So please triple check there.

Related

iAd showing test advertisement on some devices

I released an iOS app 1 week ago with iAd banner. On my wife's iPad the iAds show up normally. However on my iPad and iPhone they keep displaying test advertisement.
I've searched thru the site and google, removed the development version and downloaded the distributed app from app store, even reset the settings of my iPad still showing test advertisement.
I don't think it's an issue from apple since my wife's device is seeing real ads, it must be something for my iPad but I couldn't figure out...
Thanks!
Okay, I found the solution myself -> what I did is to use "restore" in iTunes to wipe my device - that solves the issue. If you had same issue as I did and couldn't find other way, this will do the trick :)

why iAds not working in iPad?

I am using iOS SDK 4.2
My application is not universal application(iPhone/iPad) but it can be downloaded in iPad and works fine in both devices.
Now I have integrated iAd in my application.I've followed iAdSuite example. Its working fine in iPhone. But iAds not working when I download in iPad !!!
I found The BasicBanner and ContainerBanner examples in iAdSuite are configured to support both iPhone and iPad as it creates universal build.
I want to know that is it necessary to create universal app for iAd ???
Thanks....
See my post here
iAd development - more errors than successful test ads
Put breakpoints on the ad delegates and see if they are returning failures or success. You should get at least some response.
In debug mode apple will often send failures to simulate the iAd network being down.
In production, there is a very low fill rate for iAds - so there might not be an ad available.!
My app is iPad only, and i got ads. So no, it doesn't have to be universal.

iPhone iAds Not working on iPhone 4

I have an iPhone app in the app store, but I am having a problem with iAds. iAds are showing up as they should on iPhone 3G and iPhone 3GS phones that have downloaded the app, but the iAds are not showing up on any iPhone 4 phones. They are all running the latest software version (iOS 4.2.1). Also, both iPhone 4 and iPhone 3GS phones were both correctly displaying test iAds during my testing phase. Does anyone know what might be causing this issue? Thanks in advance.
The iAds service currently has a really low fill rate (ie, you won't receive an advert every time you request one and, particularly outside the US, are often quite a bit more likely not to receive one). Quite probably either what you're seeing is a coincidence or the particular ads that Apple happens to be running at the minute in your territory aren't being supplied for the iPhone 4 with your app's combination of other ad-relevant metadata (and exactly what Apple use is undisclosed, just assume all the information you supply about your app may be relevant when picking which adverts to serve).
If your app showed the test iAds correctly then it'll show proper iAds correctly. Since Apple require that you properly implement showing/hiding of the iAd bar based on whether you receive an advert, it's safe to assume that they test this feature of your app.

Presenting both iAds and AdMobAds on the iPad

I'm currently using the AdWhirl SDK for the iPhone so I can switch Ad Networks depending on Ad-Availability.
Now there is no AdWhirl SDK for the iPad, so I just show AdMob ads.
But in iOS 4.2 we can now show iAds on the iPad too, and it would be nice to combine the two.
Is there a tutorial on how to exactly combine them?
I mean I did some manual switching between the too, in the usual delegate methods that get called when one of the two fails to load etc.
But it's really hard to test if this is working properly and stable, since on the actual Devices the fillrates for iAd will be ~10% and AdMob ~60%.
Now testing this the iAd-Test Advertisement shows up all the time, so I can't really test whether AdMob would show up, would iAd refuse to present an Ad.
I know this question is old, but I wrote an iAd/AdMob wrapper that's available on github. As little as one line of code will get both ads running and it's currently what I use with my app that's on the app store. It supports both iPhone and iPad in all orientations if you properly implement the callbacks.
If you don't want to roll your own, Mobclix offers something similar to AdWhirl for iPads

apple has rejected my iPhone app saying it must run on iPad as well

I've just submitted my app to review (for the App-Store), and apple has rejected my app, saying the following:
"On iPad, the application displays a
black screen and no content loads.
This review was conducted on iPad
running iOS 3.2.2 as well as iPhone 4
running iOS 4.1. A screenshot has been
attached for your reference. "
am i obligated to create an iPad version of my app? or maybe i've set some property "on" and made apple think i would like the app to work on iPad?
to be more clear,
i want my app to run on iPhone only.
is it possible? and if do, what need to be set (project properties? info.plist?) to mention that the app should run on iPhone only? so that apple will not test it on iPad...
appriciate your help.
Dror.
Note - this historic QA is 5+ years old.
All issues mentioned in the QA are no longer relevant in iOS development! Enjoy
The problem is almost certainly that you (accidentally) made the app universal.
IF you made it universal, you MUST have both an iPad and iPhone version in there.
If you make the app normal, iPhone only, you do NOT have to (indeed, you can't) have an iPad version in there.
To be clear, Apple are talking about the "ACTUAL" iPad version. Of course, your iPhone app will run using the "blow up mode" on an iPad. Apple are not referring to the "blow up mode."
It is rather silly that in that particular form letter, they do not say something like: ,"You have almost certainly accidentally made your app universal instead of iPhone only" since that is the situation 100% of the time when that happens.
Good luck on waiting another 2 weeks :-/
You do not have to create a specific version of your app for the iPad, however all iPhone apps must also be able to run on the iPad. You might want to try searching google for resources on how to make your app iPad compatible.