iOS에서 배너 광고 구현
Implement banner ads in your iOS app. Create and display banner view objects within your view hierarchy, and use a delegate to manage ad events.
읽는 시간 2 minutes최근 업데이트: a day ago
배너 광고를 사용하려면 특정 유형의 배너 전용 광고 유닛이 필요합니다.
다른 뷰와 마찬가지로 배너 뷰 오브젝트를 뷰 계층 구조에 배치할 수 있습니다. 그러면 각 배너 인스턴스의 위치를 커스터마이즈하거나 여러 배너를 표시할 수 있습니다.
스크립트 구현
배너 코드를ViewController
.m
UADSBannerView
MREC 배너 포맷 구현
앱에 MREC(중간 직사각형) 크기의 광고 포맷을 표시하려면 300x250, 300x300, 450x450과 같이 적절한 크기를 사용해야 합니다. 특히 300x250 MREC 배너 광고의 경우 다음 예제 코드에서 아래 값을 변경합니다.
조정된 크기는 다음과 같습니다.CGSizeMake(320, 50)
CGSizeMake(300, 250)
샘플 코드
다음 단계: 수익화 전략 가이드를 검토하고 구현 내용을 테스트하십시오.@interface ViewController () <UADSBannerViewDelegate> // This is the Ad Unit or Placement that will display banner ads: @property (strong) NSString* placementId; // This banner view object will be placed at the top of the screen: @property (strong, nonatomic) UADSBannerView *topBannerView; // This banner view object will be placed at the bottom of the screen: @property (strong, nonatomic) UADSBannerView *bottomBannerView; @end @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; self.placementId = @"banner"; [UnityAds initialize: @"1234567" testMode: YES initializationDelegate: self]; } // Example method for creating and loading the top banner view object: - (void)loadTopBanner{ // Instantiate a banner view object with the Ad Unit ID and size: self.topBannerView = [[UADSBannerView alloc] initWithPlacementId: _placementId size: CGSizeMake(320, 50)]; // Set the banner delegate for event callbacks: self.topBannerView.delegate = self; // Add the banner view object to the view hierarchy: [self addBannerViewToTopView:self.topBannerView]; // Load ad content to the banner view object: [_topBannerView load]; } // Example method for creating and loading the bottom banner view object: - (void)loadBottomBanner{ self.bottomBannerView = [[UADSBannerView alloc] initWithPlacementId: _placementId size: CGSizeMake(320, 50)]; self.bottomBannerView.delegate = self; [self addBannerViewToBottomView:self.bottomBannerView]; [_bottomBannerView load]; } // Example method for discarding the top banner view object (for example, if there's no fill): - (void)unLoadTopBanner{ // Remove the banner view object from the view hierarchy: [self.topBannerView removeFromSuperview]; // Set it to nil: _topBannerView = nil; } // Example method for discarding the bottom banner view object: - (void)unLoadBottomBanner{ [self.bottomBannerView removeFromSuperview]; _bottomBannerView = nil; } // Example method for placing the top banner view object: - (void)addBannerViewToTopView:(UIView *)bannerView { bannerView.translatesAutoresizingMaskIntoConstraints = NO; [self.view addSubview:bannerView]; [self.view addConstraints:@[ [NSLayoutConstraint constraintWithItem:bannerView attribute:NSLayoutAttributeTop relatedBy:NSLayoutRelationEqual toItem:self.topLayoutGuide attribute:NSLayoutAttributeBottom multiplier:1 constant:0], [NSLayoutConstraint constraintWithItem:bannerView attribute:NSLayoutAttributeCenterX relatedBy:NSLayoutRelationEqual toItem:self.view attribute:NSLayoutAttributeCenterX multiplier:1 constant:0] ]]; } // Example method for placing the bottom banner view object: - (void)addBannerViewToBottomView: (UIView *)bannerView { bannerView.translatesAutoresizingMaskIntoConstraints = NO; [self.view addSubview:bannerView]; [self.view addConstraints:@[ [NSLayoutConstraint constraintWithItem:bannerView attribute:NSLayoutAttributeBottom relatedBy:NSLayoutRelationEqual toItem:self.bottomLayoutGuide attribute:NSLayoutAttributeTop multiplier:1 constant:0], [NSLayoutConstraint constraintWithItem:bannerView attribute:NSLayoutAttributeCenterX relatedBy:NSLayoutRelationEqual toItem:self.view attribute:NSLayoutAttributeCenterX multiplier:1 constant:0] ]]; } // Implement the delegate methods: #pragma mark : UADSBannerViewDelegate - (void)bannerViewDidLoad:(UADSBannerView *)bannerView { // Called when the banner view object finishes loading an ad. NSLog(@"Banner loaded for Ad Unit or Placement: %@", bannerView.placementId); } - (void)bannerViewDidClick:(UADSBannerView *)bannerView { // Called when the banner is clicked. NSLog(@"Banner was clicked for Ad Unit or Placement: %@", bannerView.placementId); } - (void)bannerViewDidLeaveApplication:(UADSBannerView *)bannerView { // Called when the banner links out of the application. } - (void)bannerViewDidError:(UADSBannerView *)bannerView error:(UADSBannerError *)error{ // Called when an error occurs showing the banner view object. NSLog(@"Banner encountered an error for Ad Unit or Placement: %@ with error message %@", bannerView.placementId, [error localizedDescription]); // Note that the UADSBannerError can indicate no fill (refer to the API documentation). } @end