หากวางแผนที่จะใช้การวัดแบบเปิดกับรูปแบบโฆษณาเนทีฟที่กำหนดเองซึ่งไม่มีเนื้อหาวิดีโอ คุณจะต้องรับผิดชอบในการเรียกใช้ Open Measurement API ด้วยตัวเอง การวัดแบบเปิดสำหรับรูปแบบโฆษณาเนทีฟที่กำหนดเองประเภทดิสเพลย์ใช้ได้ในเวอร์ชัน 7.43.0 ขึ้นไปเท่านั้น หากคุณกำลังใช้รูปแบบโฆษณาเนทีฟที่กำหนดเองกับเนื้อหาวิดีโอ ก็ไม่จำเป็นต้องทำตามคู่มือนี้ เพราะ SDK โฆษณาในอุปกรณ์เคลื่อนที่ของ Google จะติดตามความสามารถในการแสดงตัวโฆษณาของเนื้อหาวิดีโอในนามของคุณได้
ข้อกำหนดเบื้องต้น
- SDK โฆษณาในอุปกรณ์เคลื่อนที่ของ Google เวอร์ชัน 7.44.0 ขึ้นไป
- อ่าน Open Measurement ด้วย SDK โฆษณาในอุปกรณ์เคลื่อนที่
- ผสานรวมรูปแบบโฆษณาเนทีฟที่กำหนดเอง
- กำหนดค่าผู้ให้บริการด้านการมองเห็นโฆษณา และกำหนดผู้ให้บริการดังกล่าวให้กับรายการโฆษณา
- ป้อนชื่อพาร์ทเนอร์เมื่อสร้างรูปแบบที่กำหนดเองใน UI ของ Ad Manager
โหลดโฆษณา
การโหลดโฆษณาจะเหมือนกันไม่ว่าคุณจะใช้การวัดแบบเปิดหรือไม่ก็ตาม ในกรณีนี้ เราจะใช้ ViewController
อย่างง่ายเพื่อแสดงการโหลด GADNativeCustomTemplateAd
:
@interface OpenMeasurementNativeCustomTemplateAdViewController ()
<GADNativeCustomTemplateAdLoaderDelegate> {
IBOutlet UIView *_parentView;
GADAdLoader *_adLoader;
GADNativeCustomTemplateAd *_customTemplateAd;
MySimpleNativeAdView *_simpleNativeAdView;
}
@end
@implementation OpenMeasurementNativeCustomTemplateAdViewController
- (void) viewDidLoad {
[super viewDidLoad];
_adLoader = [[GADAdLoader alloc] initWithAdUnitID:@"your ad unit ID"
rootViewController:self
adTypes:@[ kGADAdLoaderAdTypeNativeCustomTemplate ]
options:nil];
_adLoader.delegate = self;
[self loadAd];
}
- (void) loadAd {
GAMRequest *request = [GAMRequest request];
[_adLoader loadRequest:request];
}
...
@end
ลงทะเบียนการแสดงผลและเริ่มวัด
เมื่อแสดง GADNativeCustomTemplateAd
คุณต้องบันทึกมุมมองโฆษณาที่กำหนดเองกับ GADNativeTemplateAd
โดยใช้พร็อพเพอร์ตี้ displayAdMeasurement.view
นอกจากนี้ คุณยังต้องบอก SDK อย่างชัดแจ้งเพื่อเริ่มวัดผลโฆษณา โดยเรียกใช้เมธอด startWithError:
ในพร็อพเพอร์ตี้ displayAdMeasurement
ของ GADNativeCustomTemplateAd
ต้องเรียกใช้ startWithError:
จากเทรดหลัก และการเรียกใช้ครั้งต่อๆ ไปจะไม่มีผล
@implementation OpenMeasurementNativeCustomTemplateAdViewController
...
#pragma mark - GADNativeCustomTemplateAdLoaderDelegate
- (void) adLoader:(GADAdLoader *) adLoader
didReceiveNativeCustomTemplateAd:(GADNativeCustomTemplateAd *)nativeCustomTemplateAd {
NSLog(@"Received custom native ad: %@", nativeCustomTemplateAd);
_customTemplateAd = nativeCustomTemplateAd;
// Put the custom native ad on screen.
_simpleNativeAdView =
[[NSBundle mainBundle] loadNibNamed:@"SimpleCustomNativeAdView"
owner:nil
options:nil]
.firstObject;
[_parentView addSubview:_simpleNativeAdView];
[_simpleNativeAdView populateWithCustomNativeAd:_customTemplateAd];
// Set the top-level native ad view on the GADNativeCustomTemplateAd so the
// Google Mobile Ads SDK can track viewability for that view.
_customTemplateAd.displayAdMeasurement.view = _simpleNativeAdView;
// Begin measuring your impressions and clicks.
NSError *error = nil;
[_customTemplateAd.displayAdMeasurement startWithError:&error];
if (error) {
NSLog(@"Failed to start the display measurement.");
}
}
...
@end
เท่านี้ก็เรียบร้อย เมื่อเผยแพร่แอป คุณจะเริ่มได้รับข้อมูลการวัดผล แต่ข้อมูลจะไม่ได้รับการรับรองจนกว่าคุณจะผ่านกระบวนการรับรองของ IAB