คู่มือนี้จะอธิบายวิธีใช้การควบคุมการคลิกผ่านได้มากขึ้นในการติดตั้งใช้งาน IMA SDK "การคลิกผ่าน" หมายถึงกระบวนการที่ผู้ใช้คลิกโฆษณาและไปยังหน้า Landing Page ของโฆษณานั้น ตัวอย่างในคู่มือนี้แสดงวิธีกําหนดค่าตําแหน่งที่หน้า Landing Page นั้นเปิดขึ้น และวิธีเฝ้าติดตามเหตุการณ์ที่เกี่ยวข้องกับผู้ใช้ที่เข้าชมหน้านั้น
ข้อกำหนดเบื้องต้น
แอปพลิเคชัน iOS ที่มีการติดตั้งใช้งาน IMA SDK
การกำหนดค่าการคลิกผ่าน
การเปลี่ยนโปรแกรมเปิดลิงก์
IMA SDK มี 2 ตัวเลือกในการเปิดหน้า Landing Page ของโฆษณา ได้แก่ ผ่านเบราว์เซอร์ในแอปหรือผ่าน Safari โดยค่าเริ่มต้น SDK จะเปิดหน้าเว็บโดยใช้ Safari หากต้องการอัปเดต SDK เพื่อใช้เบราว์เซอร์ในแอป คุณต้องใช้IMAAdsRenderingSettings
func createAdsRenderingSettings() { self.adsRenderingSettings = IMAAdsRenderingSettings(); self.adsRenderingSettings.linkOpenerDelegate = self; self.adsRenderingSettings.linkOpenerPresentingController = self; }
- (void)createAdsRenderingSettings { self.adsRenderingSettings = [[IMAAdsRenderingSettings alloc] init]; self.adsRenderingSettings.linkOpenerDelegate = self; self.adsRenderingSettings.linkOpenerPresentingController = self; }
IMAAdsRenderingSettings
แล้ว คุณสามารถส่งอินสแตนซ์นั้นไปยังเมธอดเริ่มต้นของ IMAAdsManager
ดังนี้
self.adsManager.initialize(withAdsRenderingSettings: adsRenderingSettings);
[self.adsManager initializeWithAdsRenderingSettings:adsRenderingSettings];
รอรับเหตุการณ์ที่เกี่ยวข้องกับการคลิกผ่าน
IMA SDK มีIMALinkOpenerDelegate
เพื่อสื่อสารเมื่อผู้ใช้กําลังจะดูหรือเพิ่งปิดหน้าคลิกผ่าน หากต้องการใช้ตัวรับมอบสิทธิ์นี้ ให้เพิ่มลงในรายการตัวรับมอบสิทธิ์ในส่วนหัว และใช้เมธอดของตัวรับมอบสิทธิ์ ในส่วนหัว
class ViewController: UIViewController, IMALinkOpenerDelegate {
@interface ViewController : UIViewController<IMALinkOpenerDelegate>
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.") }
- (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."); }