Xcodeを起動し,
1. プロジェクト名→Targetsを選択→"Linked Frameworks and Libraries"の+ボタンを押し,iAd.framework, AudioToolBox.framework,SystemConfiguration.framework,MessageUI.frameworkを追加する。
2.AdmobのサイトからダウンロードしたAdmob SDKの"GAD〜.h"と"libGoogleAdMobAds.a"ファイルをプロジェクトに加える。
3.下記ソースコードを入力する
・ViewController.h
#import <UIKit/uikit.h> #import <iAd/iad.h> #import "GADBannerView.h" @interface ViewController : UIViewController{ ADBannerView *adView; BOOL bannerIsVisible; //iAd非表示判定用 GADBannerView *gAdBannerView; BOOL bannerIsVisible2; //Admob非表示判定用 } @end
・ViewController.m
#import#import "ViewController.h" #define MY_BANNER_UNIT_ID @"" //AdmobのPublisherIDをここに挿入 @interface ViewController () @end @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; [self startiAd]; } - (void)viewDidUnload { [super viewDidUnload]; // Release any retained subviews of the main view. } - (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation { return (interfaceOrientation != UIInterfaceOrientationPortraitUpsideDown); } //iAd,admob実装系 // iAD広告開始 - (void) startiAd { ADBannerView *banner = [[ADBannerView alloc] initWithFrame:CGRectZero]; banner.delegate = self; /// banner.currentContentSizeIdentifier = ADBannerContentSizeIdentifier320x50; adView = banner; [self.view addSubview:banner]; //iAdのバナーを画面の外に表示しておく [self moveBannerViewOffscreen]; } //iAdのバナーを画面の外に表示する - (void)moveBannerViewOffscreen{ CGRect newBannerView = self.view.frame; newBannerView.origin.y = self.view.frame.size.height; adView.frame = newBannerView; } //iAdのバナーを画面の中に表示する - (void)moveBannerViewOnscreen{ CGRect newBannerView = self.view.frame; newBannerView.origin.y = self.view.frame.size.height - adView.frame.size.height; [UIView beginAnimations:@"BannerViewIntro" context:NULL]; adView.frame = newBannerView; [UIView commitAnimations]; } // iAdの広告を取得したとき - (void)bannerViewDidLoadAd:(ADBannerView *)banner{ //AdMobの広告を終了する [self endAdMobAd]; //iAdのバナーを画面の中に表示する [self moveBannerViewOnscreen]; } // iAdの広告が取得できなかったとき - (void)bannerView:(ADBannerView *)banner didFailToReceiveAdWithError:(NSError *)error{ ///iAdのバナーを画面の外に表示する [self moveBannerViewOffscreen]; //Admobの広告を開始する [self startAdMobAd]; } // Admobの広告を開始する - (void) startAdMobAd { if (!bannerIsVisible2) { gAdBannerView = [[GADBannerView alloc] initWithFrame:CGRectMake(0.0, self.view.frame.size.height - GAD_SIZE_320x50.height, GAD_SIZE_320x50.width, GAD_SIZE_320x50.height)]; gAdBannerView.adUnitID = MY_BANNER_UNIT_ID; gAdBannerView.rootViewController = self; [self.view addSubview:gAdBannerView]; // Initiate a generic request to load it with an ad. [gAdBannerView loadRequest:[GADRequest request]]; bannerIsVisible2 = YES; } } // AdMobの広告を終了する - (void) endAdMobAd { if (bannerIsVisible2) { [gAdBannerView removeFromSuperview]; gAdBannerView.delegate = nil; gAdBannerView = nil; bannerIsVisible2 = NO; } } @end
以上のコードで,iAdが取得できた時はiAdが表示され, 取得できなかった場合はAdMobが表示されます。
また暇があれば,他にもよく使っているコードを載せていきます。
0 件のコメント:
コメントを投稿