Định cấu hình lượt nhấp

Hướng dẫn này giải thích cách triển khai nhiều quyền kiểm soát hơn đối với lượt nhấp trong quá trình triển khai SDK IMA. "Lượt nhấp" là quá trình một người dùng nhấp vào một quảng cáo rồi chuyển đến trang đích của quảng cáo đó. Các ví dụ trong hướng dẫn này minh hoạ cách định cấu hình nơi trang đích sẽ mở ra và cách theo dõi các sự kiện liên quan đến người dùng truy cập trang đó.

Điều kiện tiên quyết

Ứng dụng iOS có triển khai SDK IMA.

Định cấu hình lượt nhấp

SDK IMA cung cấp hai lựa chọn để mở trang đích quảng cáo — thông qua trình duyệt trong ứng dụng hoặc qua Safari. Theo mặc định, SDK sẽ mở trang bằng Safari. Để cập nhật SDK nhằm sử dụng trình duyệt trong ứng dụng, bạn cần dùng IMAAdsRenderingSettings:
- (void)createAdsRenderingSettings {
  self.adsRenderingSettings = [[IMAAdsRenderingSettings alloc] init];
  self.adsRenderingSettings.linkOpenerDelegate = self;
  self.adsRenderingSettings.linkOpenerPresentingController = self;
}
Sau khi định cấu hình thực thể IMAAdsRenderingSettings, bạn có thể truyền thực thể đó vào phương thức khởi chạy IMAAdsManager:
[self.adsManager initializeWithAdsRenderingSettings:adsRenderingSettings];
SDK IMA cung cấp IMALinkOpenerDelegate để giao tiếp khi người dùng sắp xem hoặc vừa đóng một trang nhấp. Để sử dụng tính năng uỷ quyền này, hãy thêm nó vào danh sách uỷ quyền của bạn trong tiêu đề và triển khai các phương thức của nó. Trong tiêu đề:
@interface ViewController : UIViewController<IMALinkOpenerDelegate>
Và trong quá trình triển khai:
- (void)linkOpenerWillOpenExternalBrowser:(NSObject *)linkOpener {
  NSLog(@"External browser will open.");
}

- (void)linkOpenerWillOpenInAppBrowser:(NSObject *)linkOpener {
  NSLog(@"In-app browser will open");
}

- (void)linkOpenerDidOpenInAppBrowser:(NSObject *)linkOpener {
  NSLog(@"In-app browser did open");
}

- (void)linkOpenerWillCloseInAppBrowser:(NSObject *)linkOpener {
  NSLog(@"In-app browser will close");
}

- (void)linkOpenerDidCloseInAppBrowser:(NSObject *)linkOpener {
  NSLog(@"In-app browser did close");
}