Banner quảng cáo yêu cầu một loại Đơn vị Quảng cáo dạng banner chuyên dụng cụ thể.
Bạn có thể đặt đối tượng khung nhìn banner vào hệ thống phân cấp khung nhìn của mình, cũng như với bất kỳ khung nhìn nào khác. Điều này cho phép bạn tùy chỉnh vị trí của từng trường hợp banner hoặc hiển thị nhiều banner.
Triển khai tập lệnh
Thêm mã banner của bạn khi triển khai ViewController
(.m
). Mẫu tập lệnh sau đây là ví dụ triển khai để hiển thị hai banner quảng cáo trên màn hình. Để biết thêm thông tin về các lớp được tham chiếu, hãy tham khảo mục API UADSBannerView
.
Cách triển khai định dạng banner MREC
Để hiển thị định dạng quảng cáo có kích thước hình chữ nhật cỡ trung bình (MREC) trong ứng dụng của bạn, hãy nhớ sử dụng kích thước phù hợp, chẳng hạn như 300x250, 300x300 hoặc 450x450. Trong trường hợp banner quảng cáo có kích thước cụ thể là 300x250 MREC, hãy thay thế kích thước này trong mã mẫu sau:
CGSizeMake(320, 50)
Với kích thước đã điều chỉnh này:
CGSizeMake(300, 250)
Mã mẫu
@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
Bước tiếp theo: Xem lại hướng dẫn về chiến lược kiếm tiền và thử nghiệm quá trình triển khai của bạn.