หากคุณวางแผนที่จะใช้การวัดแบบเปิดกับรูปแบบโฆษณาเนทีฟที่กำหนดเอง ซึ่ง ไม่มีชิ้นงานวิดีโอ คุณจะเป็นผู้รับผิดชอบต่อการเรียกใช้โค้ด Measurement API ด้วยตัวเอง เปิดการวัดผลสำหรับโฆษณาเนทีฟที่กำหนดเองประเภทดิสเพลย์ มีการรองรับรูปแบบตั้งแต่เวอร์ชัน 7.43.0 ขึ้นไปเท่านั้น หากคุณกำลังใช้รูปแบบที่กำหนดเอง รูปแบบโฆษณาเนทีฟด้วยชิ้นงานวิดีโอ คุณก็ไม่จำเป็นต้องทําตามนี้ Google Mobile Ads SDK จะติดตามการมองเห็นโฆษณาของเนื้อหาวิดีโอ ในนามของคุณ
ข้อกำหนดเบื้องต้น
- SDK โฆษณาในอุปกรณ์เคลื่อนที่ของ Google เวอร์ชัน 7.44.0 ขึ้นไป
- อ่านหัวข้อเปิดการวัดผลด้วยโฆษณาบนอุปกรณ์เคลื่อนที่ SDK
- ผสานรวมโฆษณาเนทีฟที่กำหนดเอง รูปแบบ
- กําหนดค่าผู้ให้บริการด้านการมองเห็นโฆษณาและมอบหมายผู้ให้บริการนั้นให้กับรายการโฆษณา
- ป้อนชื่อพาร์ทเนอร์ของคุณเมื่อสร้าง ใน UI ของ Ad Manager
โหลดโฆษณา
การโหลดโฆษณาจะทำงานเหมือนกันไม่ว่าคุณกำลังใช้การวัดแบบเปิดหรือไม่ ด้วยวิธีนี้
เราจะใช้ ViewController
อย่างง่ายเพื่อแสดงการโหลด
GADNativeCustomFormatAd
:
@interface OpenMeasurementNativeCustomFormatAdViewController ()
<GADNativeCustomFormatAdLoaderDelegate> {
IBOutlet UIView *_parentView;
GADAdLoader *_adLoader;
GADNativeCustomFormatAd *_customTemplateAd;
MySimpleNativeAdView *_simpleNativeAdView;
}
@end
@implementation OpenMeasurementNativeCustomFormatAdViewController
- (void) viewDidLoad {
[super viewDidLoad];
_adLoader = [[GADAdLoader alloc] initWithAdUnitID:@"your ad unit ID"
rootViewController:self
adTypes:@[ kGADAdLoaderAdTypeNativeCustomFormat ]
options:nil];
_adLoader.delegate = self;
[self loadAd];
}
- (void) loadAd {
GAMRequest *request = [GAMRequest request];
[_adLoader loadRequest:request];
}
...
@end
ลงทะเบียนมุมมองและเริ่มวัดผล
เมื่อแสดง GADNativeCustomFormatAd
คุณจะต้องลงทะเบียนโฆษณาที่กำหนดเอง
ดูด้วย GADNativeTemplateAd
โดยใช้ displayAdMeasurement.view
และคุณยังต้องบอกให้ SDK เริ่มวัดผลโฆษณาอย่างชัดแจ้งด้วย วิธีการคือ
เรียกใช้เมธอด startWithError:
ในพร็อพเพอร์ตี้ displayAdMeasurement
ของ
GADNativeCustomFormatAd
ต้องเรียก startWithError:
จาก
ชุดข้อความ และการเรียกครั้งต่อๆ ไปจะไม่มีผล
@implementation OpenMeasurementNativeCustomFormatAdViewController
...
#pragma mark - GADNativeCustomFormatAdLoaderDelegate
- (void) adLoader:(GADAdLoader *) adLoader
didReceiveNativeCustomFormatAd:(GADNativeCustomFormatAd *)nativeCustomFormatAd {
NSLog(@"Received custom native ad: %@", nativeCustomFormatAd);
_customTemplateAd = nativeCustomFormatAd;
// 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 GADNativeCustomFormatAd 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 กระบวนการ