맥부기에 공유된 좋은 정보와 의견들 덕분에
어플에 광고 붙이기를 하루만에 끝냈네요.
다 맥부기 회원님들 덕분입니다. ㅎㅎ
맥부기에 고마운 마음에
광고 붙이기 작업 끝내고 나서
개인적으로 정리한 내용과 참고 소스를 공유해 봅니다.
두서 없이 정리한 내용이라 보기는 좀 안 좋지만
혹시나 누군가에게 도움이 될지도 모른다는 생각에
부끄럼 무릅쓰고 내용 공유해 봅니다.
즐거운 주말 보내세요~
--------------------------------------------------
[애드몹 샘플 소스 있는 wiki 사이트 주소]
http://code.google.com/mobile/ads/docs/ios/fundamentals.html
[ 추가해야 하는 라이브러리 링크 ]
( 애드몹 구동을 위한 프레임웤 )
AudioToolbox.framework
MessageUI.framework
SystemConfiguration.framework
libGoogleAdMobAds.a ( 애드몹 사이트에서 다운로드 받아야 함 )
( iAd 구동을 위한 프레임웤 )
iAd.framework
[헤더]
#import <iAd/iAd.h>
#import "GADBannerViewDelegate.h"
@class GADBannerView;
@interface SomeViewController : UIViewController
< ADBannerViewDelegate, GADBannerViewDelegate >
{
// 광고 배너
ADBannerView* adBanner; // iAD
GADBannerView* adMobBanner; // 애드몹
}
[구현]
#import "GADBannerView.h"
// 광고 배너 초기화. init함수내에서 이 함수를 호출 해야 함
- (void)initADBanner
{
// iAd 배너
if( NSClassFromString(@"ADBannerView") )
{
adBanner = [[ADBannerView alloc] initWithFrame:CGRectZero];
[adBanner setRequiredContentSizeIdentifiers:
[NSSet setWithObjects:ADBannerContentSizeIdentifierPortrait, nil]];
[adBanner setCurrentContentSizeIdentifier:ADBannerContentSizeIdentifierPortrait];
[adBanner setFrame:CGRectMake(0, 416, 320, 50)];
[adBanner setDelegate:self];
[self.view addSubview:adBanner];
[adBanner release];
}
// 애드몹 배너
adMobBanner = [[GADBannerView alloc]
initWithFrame:CGRectMake(0, 416, 320, 50)];
[adMobBanner setRootViewController:self];
[adMobBanner setDelegate:self];
[adMobBanner setAdUnitID:@"애드몹 사이트에서 할당받은 ID"];
[self.view addSubview:adMobBanner];
[adMobBanner release];
// 애드몹 광고 요청하기
GADRequest* requestAd = [GADRequest request];
// 테스트 설정. 테스트 끝난 후 꼭 주석 처리
[requestAd setTestDevices:
[NSArray arrayWithObjects:[[UIDevice currentDevice] uniqueIdentifier], nil]];
[adMobBanner loadRequest:requestAd];
}
#pragma mark iAD Delegate
- (void)bannerViewDidLoadAd:(ADBannerView *)banner
{
[UIView beginAnimations:@"animateBannerAppear" context:nil];
[adBanner setFrame:CGRectMake(0, 366, 320, 50)];
[UIView commitAnimations];
}
- (void)bannerView:(ADBannerView *)banner didFailToReceiveAdWithError:(NSError *)error
{
[UIView beginAnimations:@"animateBannerOff" context:nil];
[adBanner setFrame:CGRectMake(0, 416, 320, 50)];
[UIView commitAnimations];
}
#pragma mark -
#pragma mark adMob Delegate
- (void)adViewDidReceiveAd:(GADBannerView *)bannerView
{
[UIView beginAnimations:@"BannerSlide" context:nil];
[adMobBanner setFrame:CGRectMake(0, 366, 320, 50)];
[UIView commitAnimations];
}
- (void)
adView:(GADBannerView *)bannerView
didFailToReceiveAdWithError:(GADRequestError *)error
{
[UIView beginAnimations:@"BannerSlide" context:nil];
[adMobBanner setFrame:CGRectMake(0, 416, 320, 50)];
[UIView commitAnimations];
}
출처 : http://cafe.naver.com/mcbugi
'프로그래밍 > iOS' 카테고리의 다른 글
nate open api 아이폰, 아이패드(iOS) api입니다. (0) | 2011.05.18 |
---|---|
처음부터 iPhone 대화 앱 빌드하기[Simple iPhone Chat] (0) | 2011.05.18 |
디바이스의 언어 정보와 지역 정보를 가져오는 법입니다 (0) | 2011.05.18 |
[iOS/Three20] Add to Project (0) | 2011.05.11 |
HTML 파싱 소스 (0) | 2011.05.04 |