-
iOS 4.0 에서 추가된 iAD가 있습니다.기본적으로 포함되어 있어 애드몹이나, 여타 다른 광고들 보다 삽입하기 쉽게 되어있습니다.
인터페이스 빌더에서 직접 던져 넣어도 되고, 코드상에서 생성해서 만들어 됩니다.전 아직 맥에서 티스토리에 사진 올리는 법을 전혀 못 찾았기에 코드로 작성하겠습니다.
우선 프로젝트에 iAD Framework를 추가해야 합니다.프레임워크 추가한 뒤에 배너가 보일 뷰, 혹은 상속받는다면 최상위에 하셔도 됩니다.
iAD헤더파일을 넣어주세요.
#import <iAD/iAD.h>
헤더파일을 넣었으면, 우선 iAD뷰를 생성해서 화면에 추가부터 해놓고 가겠습니다.
배너가 들어갈 뷰의 ViewDidLoad 메소드에서 생성했습니다.
-(void)viewDidLoad {
ADBannerView *adBanner = [[ADBannerView alloc] initWithFrame:CGRectZero];
adBanner.currentContentSizeIdentifier = ADBannerContentSizeIdentifier320x50;
adBanner.delegate = self;
[self.view addSubView:adBanner];
[super viewDidLoad];
}
위 코드대로 하시면 뷰의 상단에 320x50짜리 iAD배너가 매달립니다. 시뮬에서 확인해 보세요.위치를 변경하시는건 CGrectZero 를 대체해주시면 됩니다.단, CGRect 생성할때에 Width, Height는 배너사이즈와 맞춰주세요.
제가 구글링한 결과는 위에것만이면 된다고 봐서 실제로 저 코드만 넣어서 리뷰를 넣어봤는데,Reject 이었습니다. iAD Delegate를 작성해야한다더군요.
- (void)bannerView:(ADBannerView *)banner didFailToReceiveAdWithError:(NSError *)error
{
if (self.bannerIsVisible)
{
[UIView beginAnimations:@"animateAdBannerOff" context:NULL];
// assumes the banner view is at the top of the screen.
banner.frame = CGRectOffset(banner.frame, 0, -50);
[UIView commitAnimations];
self.bannerIsVisible = NO;
}
}
네, 친절하게도 코드를 통째로 보내줬습니다. 광고를 받는데 실패했을때의 처리를 해야한다는 내용과 함께.
별로 특별할건 없고, 광고가 들어갈 뷰에 iAD프로토콜을 받겠다고 해주시고, 위 코드를 넣어주시면 됩니다.
근데 보시면 분기문에 bannerIsVisible 값을 체크합니다.
네 없습니다. 이놈이 어디에도 없어요. self자체가 iAD View 인가.... 했었는데
그건 아니고, 그냥 BOOL로 하나 선언해서 쓰면 된다고합니다.
//viewController.h
...
@interface viewController : UIViewController <ADBannerViewDelegate > {
...
BOOL bannerIsVisible;
}
@property BOOL bannerIsVisible;
@end
//viewController.m
@synthesize bannerIsVisible;
...
- (void)bannerView:(ADBannerView *)banner didFailToReceiveAdWithError:(NSError *)error
{
if (self.bannerIsVisible)
{
[UIView beginAnimations:@"animateAdBannerOff" context:NULL];
// assumes the banner view is at the top of the screen.
banner.frame = CGRectOffset(banner.frame, 0, -50);
[UIView commitAnimations];
self.bannerIsVisible = NO;
}
}
...
@end
대충 프레임워크를 추가하고, 헤더 넣고,뷰생성해서 붙이고,델리게이트 구현해주면 됩니다.
어플 등록하실떄에, iAD활성화 시키셔야 하구요.
조금 더 세부적으로 구현할수있는것 같지만 그부분은 아직 확인해보지 않았고우선 등록시키고 활성화 시키는것 까지는 위 코드로 가능합니다.
'프로그래밍 > 아이폰' 카테고리의 다른 글
조금 더 정리. (0) 2010.08.03 Application loader (0) 2010.07.31 NSPoint (0) 2010.07.31 7월 평균 리뷰기간 (0) 2010.07.30 NSRange - by cocoa FoundationKit structs (0) 2010.07.29 댓글