Panduan ini menjelaskan cara menerapkan lebih banyak kontrol atas klik-tayang dalam penerapan IMA SDK Anda. "Klik-tayang" mengacu pada proses pengguna mengklik iklan dan membuka halaman landing untuk iklan tersebut. Contoh dalam panduan ini menunjukkan cara mengonfigurasi tempat halaman landing tersebut terbuka dan cara memproses peristiwa yang terkait dengan pengguna yang mengunjungi halaman tersebut.
Prasyarat
Aplikasi iOS dengan IMA SDK yang diterapkan.
Mengonfigurasi klik-tayang
Mengubah pembuka link
IMA SDK menawarkan dua opsi untuk membuka halaman landing iklan—melalui browser dalam aplikasi, atau melalui Safari. Secara default, SDK membuka halaman menggunakan Safari. Untuk mengupdate SDK agar dapat menggunakan browser dalam aplikasi, Anda harus menggunakanIMAAdsRenderingSettings
:
Swift
func createAdsRenderingSettings() { self.adsRenderingSettings = IMAAdsRenderingSettings(); self.adsRenderingSettings.linkOpenerDelegate = self; self.adsRenderingSettings.linkOpenerPresentingController = self; }
Objective-C
- (void)createAdsRenderingSettings { self.adsRenderingSettings = [[IMAAdsRenderingSettings alloc] init]; self.adsRenderingSettings.linkOpenerDelegate = self; self.adsRenderingSettings.linkOpenerPresentingController = self; }
IMAAdsRenderingSettings
, Anda dapat meneruskannya ke metode inisialisasi IMAAdsManager
:
Swift
self.adsManager.initialize(withAdsRenderingSettings: adsRenderingSettings);
Objective-C
[self.adsManager initializeWithAdsRenderingSettings:adsRenderingSettings];
Memproses peristiwa terkait klik-tayang
IMA SDK menyediakanIMALinkOpenerDelegate
untuk berkomunikasi saat pengguna akan
melihat atau baru saja menutup halaman klik-tayang. Untuk menggunakan delegasi ini, tambahkan ke daftar
delegasi Anda di header, dan terapkan metodenya. Di header:
Swift
class ViewController: UIViewController, IMALinkOpenerDelegate {
Objective-C
@interface ViewController : UIViewController<IMALinkOpenerDelegate>
Swift
func linkOpenerWillOpen(externalBrowser: NSObject) { print("External browser will open.") } func linkOpenerWillOpen(inAppLink: NSObject) { print("In-app browser will open.") } func linkOpenerDidOpen(inAppLink: NSObject) { print("In-app browser did open.") } func linkOpenerWillClose(inAppLink: NSObject) { print("In-app browser will close.") } func linkOpenerDidClose(inAppLink: NSObject) { print("In-app browser did close.") }
Objective-C
- (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."); }