I want to displaying my own ads in my applications. Acutally the ads banner are static images which are loaded after some delay. Is iad network should be enable for that the app which display these iads. Because i does not want to load iads from the apple.
No. iAd is only for displaying ads from the Apple iAd network using an ADBannerView in your app. If you are just presenting the user a banner image that you have created then no matter what it does you don't need to touch or worry about anything to do with iAd.
From Apple's Documentation:
The ADBannerView class provides a self-contained view. Your
application should not subclass ADBannerView, nor should your
application attempt to change the behavior of the banner view. For
example, your application should never add subviews to a banner view.
If you are using an ADBannerview for anything other than displaying iAds from Apple you're doing it wrong. It seems like you want to display your own ads which are static images. The correct class to use for this is UIImageView. If you display your own images using an ADBannerView you will get rejected from the App Store.
Related
I want to add many ADBanners in my application. What's preferred: share one banner in all view controllers, or create an ADBanner for each viewController?
it does not really matter if you want to create a ad banner for each view.
but you need to keep in mind the best practices from documentation:
Banner View Best Practices
Only create a banner view when you intend to display it to the user. Otherwise, it may cycle through ads and deplete the list of available advertising for your application.
If the user navigates from a screen of content with a banner view to a screen that does not have a banner view, and you expect them to be on that screen for a long period of time, remove the banner view from the view hierarchy, set its delegate to nil and release it before transitioning to the new screen of content. More generally, avoid keeping a banner view around when it is invisible to the user.
When your application creates a banner view, there is a delay before the view can actually display an advertisement. If you intend to use that banner view on a screen of content that is only visible to the user for a short period of time, the banner may not have enough time to download an advertisement before a user finishes interacting with that screen of content. Instead, your application should create a single banner view and use it throughout your user interface. As the user navigates around your application, your application moves the banner view onto any screen that is expected to display a banner. The iAdSuite sample demonstrates how to implement this technique.
When an ad transitions to a rich media experience, iAd consumes additional memory so that it can display an interactive ad to the user. This memory comes from your application’s available memory. Your application must scale back its activities to allow the ad to run smoothly and respond quickly to low-memory conditions by releasing large objects that can be easily recreated after the user finishes interacting with the ad.
I prefer to create a singleton class for ads and just call the same view into each view when displayed. That way you don't have to call for a new advert on each view.
I've posted singleton code for adwhirl here is it a good practice to delete the AdBannerView on viewWillDisappear and add it back on viewWillAppear? which you should be able to ammend for just iAd
When a user clicks a button, I want a full screen iAd to appear, before the user can continue.
I can create the popup view, but how do I fill the whole view with an iAd? (e.g. like its done in wordfeud)
ADInterstitialAd (or full screen iAd) is only available for the iPad. You can't use it on the iPhone.
From iAd Programming Guide:
Full-Screen Advertisements are Only Available on iPad
Have a look at that guide to see how to implement full-screen iAds on the iPad.
Use the ADInterstitialAd class. You can present it from another view controller (e.g. your main game board’s) with -presentFromViewController:, or within an existing view with -presentInView:.
I want to implement a Newsstand App and I have seen that almost Newsstand App have the same background for the Library, the first screen of the app, same xib, but with their own covers for their magazine. It this xib available somewhere so that I could also use it?
Thanks!
No. You need to implement your own view controller.
In our app, Admob's Ads are displayed on several View Controllers (VCs). And each VC loads it own ad. This leads to unnecessary network usage for the user.
To counter this, can we achieve something like... loading the ad when App Launches & mirroring it on VCs... this way it could have at least two benefits:
user network would be efficiently used
there would be no delay in displaying ad when user switches views
Thanks
You wouldn't mirror the content, you could just pass the UIView between the UIViewControllers.
Put the admob code somewhere common (perhaps your app delegate) so it's only in one place. When you show a new uiviewcontroller, in it's viewWillAppear view ask the app delegate for the advert view.
I'm trying to integrate iAds to iPhone app. It makes me very confusing.
my app got many view controllers with uitableviews.
Should I integrate iAds at every view controller or
should I add it in mainwindow.xib (i add iAds codes to AppDelegate.h .m) or
should I create iAdsViewcontroller.h .m & .xib?
if I add iAds to mianwindow.xib, how do i handle delegates like bannerViewDidLoadAd (need to resize uitableview according to bannerview is visibie or not).
If i integrate at every view controller, banner would be switching along with the app views. I read somewhere if the app doesn't show an Ad for at least 30 seconds, it will lose ecpm.
Any thoughts will be appreciated... =)
Apple iAd Documentation Best Practices