โฆษณาเนทีฟคือเนื้อหาโฆษณาที่แสดงต่อผู้ใช้ผ่านคอมโพเนนต์ UI ที่เป็นโฆษณาเนทีฟของแพลตฟอร์ม โดยจะแสดงโดยใช้ชั้นเรียนเดียวกันกับที่คุณใช้ ในสตอรีบอร์ดอยู่แล้ว และสามารถจัดรูปแบบให้ตรงกับการออกแบบภาพของแอป
เมื่อโฆษณาเนทีฟโหลด แอปจะได้รับออบเจ็กต์โฆษณาที่มีชิ้นงาน และแอป (แทนที่จะเป็น SDK โฆษณาในอุปกรณ์เคลื่อนที่ของ Google) จะรับผิดชอบในการแสดงโฆษณาเหล่านั้น
พูดกว้างๆ ก็คือการใช้โฆษณาเนทีฟให้ประสบความสำเร็จมี 2 ส่วนด้วยกัน ได้แก่ การโหลดโฆษณาโดยใช้ SDK และการแสดงเนื้อหาโฆษณาในแอป
หน้านี้แสดงวิธีใช้ SDK เพื่อโหลด โฆษณาเนทีฟ
สิ่งที่ต้องดำเนินการก่อน
- ทำตามคู่มือเริ่มต้นใช้งานจนจบ
ทดสอบด้วยโฆษณาทดสอบเสมอ
เมื่อสร้างและทดสอบแอป โปรดตรวจสอบว่าคุณใช้โฆษณาทดสอบแทนที่จะใช้โฆษณาจริงในเวอร์ชันที่ใช้งานจริง
วิธีที่ง่ายที่สุดในการโหลดโฆษณาทดสอบคือการใช้รหัสหน่วยโฆษณาทดสอบโดยเฉพาะของเราสำหรับโฆษณาเนทีฟบน iOS
/6499/example/native
โดยได้รับการกำหนดค่าเป็นพิเศษให้ส่งคืนโฆษณาทดสอบสำหรับคำขอทุกรายการ และคุณนำไปใช้ในแอปของคุณเองขณะเขียนโค้ด ทดสอบ และแก้ไขข้อบกพร่องได้ เพียงตรวจสอบว่าคุณได้แทนที่ด้วยรหัสหน่วยโฆษณาของคุณเองแล้วก่อนที่จะเผยแพร่แอป
สำหรับข้อมูลเพิ่มเติมเกี่ยวกับวิธีการทำงานของโฆษณาทดสอบของ Google Mobile Ads SDK โปรดดูทดสอบโฆษณา
โหลดโฆษณา
โฆษณาเนทีฟจะโหลดด้วยคลาส GADAdLoader
ซึ่งจะส่งข้อความถึงผู้รับมอบสิทธิ์ตามโปรโตคอล GADAdLoaderDelegate
นอกจากรูปแบบโฆษณาเนทีฟที่กำหนดโดยระบบแล้ว คุณยังสามารถสร้างรูปแบบโฆษณาเนทีฟที่กำหนดเอง
ได้อีกด้วย ซึ่งสามารถใช้กับโฆษณาเนทีฟแบบขายตรงได้ รูปแบบโฆษณาเนทีฟที่กำหนดเองช่วยให้คุณส่งผ่านข้อมูลที่มีโครงสร้างที่กำหนดเองไปยังแอปได้ โดยโฆษณาเหล่านี้จะแสดงในคลาส GADCustomNativeAd
เริ่มต้นโปรแกรมโหลดโฆษณา
คุณต้องเริ่มต้นโปรแกรมโหลดโฆษณาก่อนจึงจะโหลดโฆษณาได้
โค้ดต่อไปนี้แสดงวิธีเริ่มต้น GADAdLoader
Swift
adLoader = GADAdLoader(adUnitID: "/6499/example/native",
rootViewController: self,
adTypes: [ .native ],
options: [ ... ad loader options objects ... ])
adLoader.delegate = self
Objective-C
self.adLoader = [[GADAdLoader alloc]
initWithAdUnitID:@"/6499/example/native"
rootViewController:rootViewController
adTypes:@[ GADAdLoaderAdTypeNative ]
options:@[ ... ad loader options objects ... ]];
self.adLoader.delegate = self;
คุณจะต้องมีรหัสหน่วยโฆษณา (สามารถใช้รหัสทดสอบ) ค่าคงที่ที่จะส่งในอาร์เรย์ adTypes
เพื่อระบุรูปแบบโฆษณาเนทีฟที่ต้องการขอ และตัวเลือกที่ต้องการตั้งค่าในพารามิเตอร์ options
ดูรายการค่าที่เป็นไปได้สำหรับพารามิเตอร์ options
ได้ในหน้าการตั้งค่าตัวเลือกโฆษณาเนทีฟ
อาร์เรย์ adTypes
ควรมี อย่างน้อย 1 ค่าคงที่ต่อไปนี้
ใช้งานการมอบสิทธิ์ตัวโหลดโฆษณา
ผู้รับมอบสิทธิ์ตัวโหลดโฆษณาต้องติดตั้งใช้งานโปรโตคอลตามประเภทโฆษณาของคุณโดยเฉพาะ
สำหรับ โฆษณาเนทีฟ โปรโตคอล GADNativeAdLoaderDelegate
จะรวมข้อความที่ส่งไปยังผู้รับมอบสิทธิ์เมื่อโหลดโฆษณาเนทีฟ
Swift
public func adLoader(_ adLoader: GADAdLoader,
didReceive nativeAd: GADNativeAd)
Objective-C
- (void)adLoader:(GADAdLoader *)adLoader
didReceiveNativeAd:(GADNativeAd *)nativeAd;
โปรโตคอล GADCustomNativeAdLoaderDelegate
ประกอบด้วยข้อความที่ส่งถึงผู้รับมอบสิทธิ์เมื่อโฆษณาที่ใช้เทมเพลตที่กำหนดเองโหลดขึ้นมา
Swift
func adLoader(_ adLoader: GADAdLoader,
Receive customNativeAd: GADCustomNativeAd)
Objective-C
- (void)adLoader:(GADAdLoader *)adLoader
didReceiveCustomNativeAd:(GADCustomNativeAd *) customNativeAd;
ส่งคำขอแสดงโฆษณา
เมื่อเริ่มต้น GADAdLoader
แล้ว ให้เรียกใช้เมธอด loadRequest:
เพื่อขอโฆษณา ดังนี้
Swift
adLoader.load(GAMRequest())
Objective-C
[self.adLoader loadRequest:[GAMRequest request]];
เมธอด loadRequest:
ใน GADAdLoader
ยอมรับออบเจ็กต์ GAMRequest
เดียวกันกับแบนเนอร์และโฆษณาคั่นระหว่างหน้า คุณใช้ออบเจ็กต์คำขอเพื่อเพิ่มข้อมูลการกำหนดเป้าหมายได้เช่นเดียวกับที่ทำกับโฆษณาประเภทอื่นๆ
ระบุเมื่อโหลดเสร็จแล้ว
หลังจากที่แอปเรียกใช้ loadRequest:
แอปจะได้รับผลลัพธ์ของคำขอโดยใช้การเรียกเพื่อ
adLoader:didFailToReceiveAdWithError:
ในGADAdLoaderDelegate
adLoader:didReceiveNativeAd:
ในGADNativeAdLoaderDelegate
คำขอสำหรับโฆษณาเดียวจะส่งผลให้เกิดการเรียกไปยังหนึ่งในวิธีเหล่านั้น 1 ครั้ง
การจัดการคำขอที่ล้มเหลว
โปรโตคอลข้างต้นจะขยายโปรโตคอล GADAdLoaderDelegate
ซึ่งจะกำหนดข้อความที่ส่งเมื่อโฆษณาโหลดไม่สำเร็จ
Swift
public func adLoader(_ adLoader: GADAdLoader,
didFailToReceiveAdWithError error: NSError)
Objective-C
- (void)adLoader:(GADAdLoader *)adLoader
didFailToReceiveAdWithError:(NSError *)error;
รับการแจ้งเตือนเกี่ยวกับกิจกรรมโฆษณาเนทีฟ
เมื่อต้องการรับการแจ้งเตือนเมื่อเกิดเหตุการณ์ที่เกี่ยวข้องกับการโต้ตอบกับโฆษณาเนทีฟ ให้ตั้งค่าพร็อพเพอร์ตี้ผู้รับมอบสิทธิ์ของโฆษณาเนทีฟ ดังนี้
Swift
nativeAd.delegate = self
Objective-C
nativeAd.delegate = self;
จากนั้นจึงใช้ GADNativeAdDelegate
เพื่อรับสายที่ได้รับมอบสิทธิ์ต่อไปนี้
Swift
func nativeAdDidRecordImpression(_ nativeAd: GADNativeAd) {
// The native ad was shown.
}
func nativeAdDidRecordClick(_ nativeAd: GADNativeAd) {
// The native ad was clicked on.
}
func nativeAdWillPresentScreen(_ nativeAd: GADNativeAd) {
// The native ad will present a full screen view.
}
func nativeAdWillDismissScreen(_ nativeAd: GADNativeAd) {
// The native ad will dismiss a full screen view.
}
func nativeAdDidDismissScreen(_ nativeAd: GADNativeAd) {
// The native ad did dismiss a full screen view.
}
func nativeAdWillLeaveApplication(_ nativeAd: GADNativeAd) {
// The native ad will cause the app to become inactive and
// open a new app.
}
Objective-C
- (void)nativeAdDidRecordImpression:(GADNativeAd *)nativeAd {
// The native ad was shown.
}
- (void)nativeAdDidRecordClick:(GADNativeAd *)nativeAd {
// The native ad was clicked on.
}
- (void)nativeAdWillPresentScreen:(GADNativeAd *)nativeAd {
// The native ad will present a full screen view.
}
- (void)nativeAdWillDismissScreen:(GADNativeAd *)nativeAd {
// The native ad will dismiss a full screen view.
}
- (void)nativeAdDidDismissScreen:(GADNativeAd *)nativeAd {
// The native ad did dismiss a full screen view.
}
- (void)nativeAdWillLeaveApplication:(GADNativeAd *)nativeAd {
// The native ad will cause the app to become inactive and
// open a new app.
}
แนวทางปฏิบัติแนะนำ
ทำตามกฎเหล่านี้ขณะโหลดโฆษณา
แอปที่ใช้โฆษณาเนทีฟในรายการควรแคชรายการโฆษณาไว้ล่วงหน้า
เมื่อแคชโฆษณาล่วงหน้า ให้ล้างแคชและโหลดซ้ำหลังจากผ่านไป 1 ชั่วโมง
อย่าเรียกใช้
loadRequest:
บนGADAdLoader
อีก จนกว่าคำขอก่อนหน้าจะโหลดเสร็จ ตามที่ระบุโดยadLoaderDidFinishLoading:
แสดงโฆษณา
เมื่อคุณโหลดโฆษณาแล้ว ที่เหลือก็คือการแสดงโฆษณาแก่ผู้ใช้ของคุณ ไปที่คู่มือเนทีฟขั้นสูงเพื่อดูวิธีการ