ตัวเลือกโฆษณาเนทีฟ

โฆษณาเนทีฟมีฟีเจอร์ขั้นสูงมากมายที่ช่วยให้คุณปรับแต่งเพิ่มเติมและสร้างประสบการณ์การใช้งานโฆษณาที่ดีที่สุดได้ คู่มือนี้แสดงวิธีใช้ฟีเจอร์ขั้นสูงของโฆษณาเนทีฟ

ข้อกำหนดเบื้องต้น

การควบคุมเนื้อหา

การควบคุมสัดส่วนภาพของสื่อที่ต้องการ

การควบคุมสัดส่วนภาพของสื่อช่วยให้คุณระบุค่ากําหนดสําหรับสัดส่วนภาพของครีเอทีฟโฆษณาได้

ตั้งค่า GADNativeAdMediaAdLoaderOptions mediaAspectRatio ด้วย GADMediaAspectRatio

  • หากไม่ได้ตั้งค่าไว้ โฆษณาที่แสดงผลอาจมีสัดส่วนภาพของสื่อใดก็ได้

  • เมื่อตั้งค่าแล้ว คุณจะปรับปรุงประสบการณ์ของผู้ใช้ได้โดยระบุประเภทสัดส่วนภาพที่ต้องการ

ตัวอย่างต่อไปนี้จะสั่งให้ SDK แสดงผลรูปภาพหรือวิดีโอที่มีสัดส่วนภาพตามที่ต้องการ

GADNativeAdMediaAdLoaderOptions *nativeOption = [[GADNativeAdMediaAdLoaderOptions alloc] init];
nativeOption.mediaAspectRatio = GADMediaAspectRatioAny;

GADAdLoader* adLoader = [[GADAdLoader alloc] initWithAdUnitID:@"ca-app-pub-3940256099942544/3986624511"
                                           rootViewController:self
                                                      adTypes:@[ GADAdLoaderAdTypeNative ]
                                                      options:@[ nativeOption ]];

การควบคุมการดาวน์โหลดรูปภาพ

การควบคุมการดาวน์โหลดรูปภาพช่วยให้คุณตัดสินใจได้ว่าจะให้ SDK แสดงชิ้นงานรูปภาพหรือ URI เท่านั้น

ตั้งค่า GADNativeAdImageAdLoaderOptions disableImageLoading ให้มีค่า BOOL
  • การควบคุมการดาวน์โหลดรูปภาพจะปิดอยู่โดยค่าเริ่มต้น

  • เมื่อปิดใช้ Google Mobile Ads SDK จะป้อนข้อมูลทั้งรูปภาพและ URI ให้คุณ

  • เมื่อเปิดใช้ SDK จะป้อนข้อมูล URI เท่านั้น ซึ่งจะช่วยให้คุณดาวน์โหลดรูปภาพจริงได้ตามต้องการ

ตัวอย่างต่อไปนี้จะสั่งให้ SDK แสดงเฉพาะ URI

GADNativeAdImageAdLoaderOptions *nativeOption = [[GADNativeAdImageAdLoaderOptions alloc] init];
nativeOption.disableImageLoading = YES;

GADAdLoader* adLoader = [[GADAdLoader alloc] initWithAdUnitID:@"ca-app-pub-3940256099942544/3986624511"
                                           rootViewController:self
                                                      adTypes:@[ GADAdLoaderAdTypeNative ]
                                                      options:@[ nativeOption ]];

การควบคุมเพย์โหลดรูปภาพ

โฆษณาบางรายการมีชุดรูปภาพแทนที่จะเป็นแค่รูปภาพเดียว ใช้ฟีเจอร์นี้เพื่อระบุว่าแอปของคุณพร้อมแสดงรูปภาพทั้งหมดหรือเพียงรูปเดียว

ตั้งค่า GADNativeAdImageAdLoaderOptions shouldRequestMultipleImages ให้มีค่า BOOL
  • การควบคุมเพย์โหลดรูปภาพจะปิดอยู่โดยค่าเริ่มต้น

  • เมื่อปิดใช้ แอปจะสั่งให้ SDK แสดงเฉพาะรูปภาพแรกสำหรับชิ้นงานที่มีชุด

  • เมื่อเปิดใช้ แอปจะระบุว่าพร้อมแสดงรูปภาพทั้งหมดสำหรับชิ้นงานที่มีมากกว่า 1 รายการ

ตัวอย่างต่อไปนี้จะสั่งให้ SDK แสดงผลชิ้นงานรูปภาพหลายรายการ

GADNativeAdImageAdLoaderOptions *nativeOption = [[GADNativeAdImageAdLoaderOptions alloc] init];
nativeOption.shouldRequestMultipleImages = YES;

GADAdLoader* adLoader = [[GADAdLoader alloc] initWithAdUnitID:@"ca-app-pub-3940256099942544/3986624511"
                                           rootViewController:self
                                                      adTypes:@[ GADAdLoaderAdTypeNative ]
                                                      options:@[ nativeOption ]];

ตําแหน่ง AdChoices

การควบคุมตําแหน่งตัวเลือกโฆษณาอื่นๆ

ตัวควบคุมตําแหน่งตัวเลือกโฆษณาอื่นๆ ช่วยให้คุณเลือกมุมที่จะแสดงผลไอคอนตัวเลือกโฆษณาอื่นๆ ได้

ตั้งค่า GADNativeAdViewAdOptions preferredAdChoicesPosition ด้วยค่า GADAdChoicesPosition

  • หากไม่ได้ตั้งค่า ระบบจะตั้งค่าตำแหน่งไอคอนตัวเลือกโฆษณาอื่นๆ ไว้ที่ด้านขวาบน

  • หากตั้งค่าไว้ ระบบจะวาง AdChoices ในตำแหน่งที่กำหนดเองตามคำขอ

ตัวอย่างต่อไปนี้แสดงวิธีตั้งค่าตําแหน่งรูปภาพ AdChoices ที่กําหนดเอง

GADNativeAdViewAdOptions *nativeOptions = [[GADNativeAdViewAdOptions alloc] init];
nativeOptions.preferredAdChoicesPosition = GADAdChoicesPositionTopLeftCorner;

GADAdLoader* adLoader = [[GADAdLoader alloc] initWithAdUnitID:@"ca-app-pub-3940256099942544/3986624511"
                                           rootViewController:self
                                                      adTypes:@[ GADAdLoaderAdTypeNative ]
                                                      options:@[ nativeOptions ]];

มุมมองที่กำหนดเองของ AdChoices

ฟีเจอร์มุมมองที่กำหนดเองของตัวเลือกโฆษณาอื่นๆ ช่วยให้คุณวางไอคอนตัวเลือกโฆษณาอื่นๆ ในตำแหน่งที่กำหนดเองได้ ซึ่งแตกต่างจากการควบคุมตําแหน่ง AdChoices ที่อนุญาตให้ระบุได้เฉพาะที่มุมใดมุมหนึ่งจาก 4 มุมเท่านั้น

ตั้งค่าพร็อพเพอร์ตี้ GADNativeAd.adChoicesView ด้วย GADAdChoicesView ก่อนการแสดงผล แล้วเนื้อหา AdChoices จะแสดงผลภายใน GADAdChoicesView

ตัวอย่างต่อไปนี้แสดงวิธีตั้งค่ามุมมอง AdChoices ที่กําหนดเอง ไอคอนตัวเลือกโฆษณาอื่นๆ จะแสดงผลภายใน GADAdChoicesView

Objective-C

- (void)adLoader:(GADAdLoader *)adLoader didReceiveNativeAd:(GADNativeAd *)nativeAd {

    ...

    
    GADAdChoicesView *customAdChoicesView =
        [[GADAdChoicesView alloc] initWithFrame: CGRectMake(..., ..., ..., ...)];

    [nativeAdView addSubview:customAdChoicesView];
    nativeAdView.adChoicesView = customAdChoicesView;

    // Associate the native ad view with the native ad object. This is
    // required to make the ad clickable.
    // Note: this should always be done after populating the ad views.
    nativeAdView.nativeAd = nativeAd;
}

Swift

func adLoader(_ adLoader: GADAdLoader, didReceive nativeAd: GADNativeAd) {
    refreshAdButton.isEnabled = true

    ...
    // Define a custom position for the AdChoices icon.
    let customRect = CGRect(x: 100, y: 100, width: 15, height: 15)
    let customAdChoicesView = GADAdChoicesView(frame: customRect)
    nativeAdView.addSubview(customAdChoicesView)
    nativeAdView.adChoicesView = customAdChoicesView

    // Associate the native ad view with the native ad object. This is
    // required to make the ad clickable.
    // Note: this should always be done after populating the ad views.
    nativeAdView.nativeAd = nativeAd;
}

การควบคุมวิดีโอ

ลักษณะการเริ่มปิดเสียง

ลักษณะการเริ่มเล่นแบบปิดเสียงช่วยให้คุณปิดหรือเปิดใช้เสียงเริ่มต้นของวิดีโอได้

ตั้งค่า GADVideoOptions startMuted ให้มีค่า BOOL
  • ระบบจะเปิดใช้ลักษณะการทำงานเริ่มต้นที่ปิดเสียงไว้โดยค่าเริ่มต้น

  • เมื่อปิดใช้ แอปจะขอให้วิดีโอเริ่มต้นด้วยเสียง

  • เมื่อเปิดใช้ แอปจะขอให้วิดีโอเริ่มต้นด้วยการปิดเสียง

ตัวอย่างต่อไปนี้แสดงวิธีเริ่มวิดีโอโดยที่เสียงไม่ได้ปิดอยู่

GADVideoOptions *nativeOptions = [[GADVideoOptions alloc] init];
nativeOptions.startMuted = NO;

GADAdLoader* adLoader = [[GADAdLoader alloc] initWithAdUnitID:@"ca-app-pub-3940256099942544/3986624511"
                                           rootViewController:self
                                                      adTypes:@[ GADAdLoaderAdTypeNative ]
                                                      options:@[ nativeOptions ]];

ตัวควบคุมการเล่นที่กำหนดเอง

ซึ่งจะช่วยให้คุณขอการควบคุมอินพุตวิดีโอที่กำหนดเองเพื่อเล่น หยุดชั่วคราว หรือปิดเสียงวิดีโอได้

ตั้งค่า GADVideoOptions customControlsRequested ให้มีค่า BOOL
  • ตัวควบคุมการเล่นที่กำหนดเองจะปิดอยู่โดยค่าเริ่มต้น

  • เมื่อปิดใช้ วิดีโอจะแสดงตัวควบคุมอินพุตที่ผ่านการจัดการแสดงผลของ SDK

  • หากโฆษณามีเนื้อหาวิดีโอและเปิดใช้การควบคุมที่กำหนดเอง คุณควรแสดงการควบคุมที่กำหนดเองพร้อมกับโฆษณา เนื่องจากโฆษณาจะไม่แสดงการควบคุมใดๆ เอง จากนั้นตัวควบคุมจะเรียกใช้เมธอดที่เกี่ยวข้องใน GADVideoController

ตัวอย่างต่อไปนี้แสดงวิธีขอวิดีโอที่มีการควบคุมการเล่นที่กำหนดเอง

GADVideoOptions *nativeOptions = [[GADVideoOptions alloc] init];
nativeOptions.customControlsRequested = YES;

GADAdLoader* adLoader = [[GADAdLoader alloc] initWithAdUnitID:@"ca-app-pub-3940256099942544/3986624511"
                                           rootViewController:self
                                                      adTypes:@[ GADAdLoaderAdTypeNative ]
                                                      options:@[ nativeOptions ]];

ตรวจสอบว่าได้เปิดใช้การควบคุมที่กำหนดเองหรือไม่

เนื่องจากไม่ทราบ ณ เวลาส่งคำขอว่าโฆษณาที่แสดงผลจะอนุญาตตัวควบคุมวิดีโอที่กำหนดเองหรือไม่ คุณจึงต้องตรวจสอบว่าโฆษณาเปิดใช้ตัวควบคุมที่กำหนดเองหรือไม่

Objective-C

- (void)adLoader:(GADAdLoader *)adLoader
    didReceiveNativeAd:(GADNativeAd*)nativeAd {

  GADVideoController *videoController = nativeAd.mediaContent.videoController;
  BOOL canShowCustomControls = videoController.customControlsEnabled;

}

Swift

func adLoader(_ adLoader: GADAdLoader, didReceive nativeAd: GADNativeAd) {
        let videoController = nativeAd.mediaContent.videoController
        let canShowCustomControls = videoController?.customControlsEnabled() == true
}

แสดงผลตัวควบคุมวิดีโอที่กําหนดเอง

แสดงผลตัวควบคุมวิดีโอที่กำหนดเองโดยใช้แนวทางปฏิบัติแนะนำต่อไปนี้

  1. แสดงผลมุมมองการควบคุมที่กำหนดเองเป็นมุมมองย่อยของมุมมองโฆษณาเนทีฟ วิธีนี้ช่วยให้การคำนวณความสามารถในการแสดงโฆษณาของ Open Measurement พิจารณาการควบคุมที่กําหนดเองเป็นสิ่งกีดขวางที่ยอมรับได้
  2. หลีกเลี่ยงการแสดงผลการวางซ้อนที่มองไม่เห็นเหนือมุมมองสื่อทั้งหมด การวางซ้อนบล็อกการคลิกในมุมมองสื่อ ซึ่งส่งผลเสียต่อประสิทธิภาพโฆษณาเนทีฟ แต่ให้สร้างการวางซ้อนขนาดเล็กที่ใหญ่พอที่จะใส่ตัวควบคุมได้

ท่าทางสัมผัสการคลิกที่กำหนดเอง

ท่าทางสัมผัสการคลิกที่กำหนดเองคือฟีเจอร์โฆษณาเนทีฟที่ช่วยให้ระบบบันทึกการปัดในการดูโฆษณาเป็นการคลิกโฆษณา โดยออกแบบมาให้ทำงานร่วมกับแอปที่ใช้ท่าทางสัมผัสในการไปยังส่วนต่างๆ ของเนื้อหา คู่มือนี้แสดงวิธีเปิดใช้ท่าทางสัมผัสการคลิกที่กําหนดเองในโฆษณาเนทีฟ

เริ่มต้นGADNativeAdCustomClickGestureOptions อินสแตนซ์ด้วยทิศทางการปัดที่เลือก นอกจากนี้ คุณยังต้องระบุว่าต้องการอนุญาตให้ใช้การแตะเป็นการคลิกหรือไม่

  • ระบบจะปิดใช้ท่าทางสัมผัสการคลิกที่กำหนดเองไว้โดยค่าเริ่มต้น

  • เมื่อปิดใช้ ระบบจะนับเฉพาะการแตะเป็นการคลิก

  • เมื่อเปิดใช้ ท่าทางสัมผัสด้วยการปัดจะนับเป็นการคลิก และคุณสามารถระบุได้ว่าจะยังคงนับการแตะเป็นการคลิกหรือไม่

ตัวอย่างต่อไปนี้แสดงวิธีใช้ท่าทางสัมผัสด้วยการปัดไปทางขวาที่กำหนดเองและคงลักษณะการแตะตามปกติไว้

GADNativeAdCustomClickGestureOptions *swipeGestureOptions = [[GADNativeAdCustomClickGestureOptions alloc]
        initWithSwipeGestureDirection:UISwipeGestureRecognizerDirectionRight
                          tapsAllowed:YES];

// The following sample ad unit ID has been enabled for custom click gestures
// and can be used for testing.
self.adLoader = [[GADAdLoader alloc]
        initWithAdUnitID:@"ca-app-pub-3940256099942544/3986624511"
      rootViewController:self
                 adTypes:@[ GADAdLoaderAdTypeNative ]
                 options:@[ swipeGestureOptions ]];

รอรับเหตุการณ์ท่าทางสัมผัสด้วยการปัด

เมื่อบันทึกการคลิกด้วยท่าทางปัด Google Mobile Ads SDK จะเรียกใช้วิธีของnativeAdDidRecordSwipeGestureClick: ผู้รับมอบสิทธิ์ใน GADNativeAdDelegate นอกเหนือจากวิธีของnativeAdDidRecordClick: ผู้รับมอบสิทธิ์ที่มีอยู่

#pragma mark - GADNativeAdDelegate implementation

// Called when a swipe gesture click is recorded.
- (void)nativeAdDidRecordSwipeGestureClick:(GADNativeAd *)nativeAd {
  NSLog(@"A swipe gesture click has occurred.");
}

// Called when a swipe gesture click or a tap click is recorded, as configured in
// GADNativeAdCustomClickGestureOptions.
- (void)nativeAdDidRecordClick:(GADNativeAd *)nativeAd {
  NSLog(@"A swipe gesture click or tap click has occurred.");
}

สื่อกลาง

ท่าทางสัมผัสการคลิกที่กำหนดเองจะใช้ได้กับโฆษณาเนทีฟที่ SDK โฆษณาในอุปกรณ์เคลื่อนที่ของ Google แสดงผลเท่านั้น แหล่งที่มาของโฆษณาที่ต้องใช้ SDK ของบุคคลที่สามสําหรับการแสดงผลจะไม่ตอบสนองต่อการตั้งค่าทิศทางการคลิกที่กําหนดเอง