เปิดใช้การวัดผลแบบเปิด

เลือกแพลตฟอร์ม: HTML5 Android iOS

IMA SDK สำหรับ iOS มี Open Measurement (OM) SDK ซึ่งเป็นมาตรฐานอุตสาหกรรมที่พัฒนาโดย Interactive Advertising Bureau (IAB) เพื่อให้การวัดการมองเห็นโฆษณาและการยืนยันโดยบุคคลที่สามเป็นไปได้ เมื่อใช้ IMA SDK สำหรับ iOS นั้น OM SDK ที่รวมอยู่จะแยกวิเคราะห์ แท็ก <AdVerifications> ภายในแท็กโฆษณา VAST โดยอัตโนมัติ และส่งข้อมูลการมองเห็นโฆษณาไปยัง ผู้ให้บริการการวัดผลที่ระบุโดยใช้ OMID API IMA SDK รองรับ OM SDK v1.4, ส่วนขยาย GAM AdVerifications ใน VAST 2 ขึ้นไป และโหนด AdVerifications ใน VAST 4 ขึ้นไป โปรดคำนึงถึงประเด็นต่อไปนี้เพื่อใช้ประโยชน์จาก Open Measurement

  • หากต้องการใช้ Open Measurement คุณต้องมี IMA SDK สำหรับ iOS เวอร์ชัน 3.9.0 ขึ้นไป

  • คุณต้องกำหนดค่าโฆษณาให้ดูแลการแสดงโฆษณา <AdVerifications> ใน VAST ตามข้อกำหนดของ VAST 4.1 หากใช้ VAST 4.1 ขึ้นไป ไม่เช่นนั้นควรใช้ <Extension type="AdVerifications">

  • หลีกเลี่ยงการวางซ้อน AdDisplayContainer ด้วยโอเวอร์เลย์ใดๆ (โปร่งใสหรือทึบแสง) เนื่องจาก OM SDK จะตั้งค่าสถานะโอเวอร์เลย์เหล่านี้เป็นการกีดขวางและลดการมองเห็นโฆษณา

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

การทดสอบ

หากต้องการทดสอบ Open Measurement โดยใช้ IMA SDK ให้ใช้ IMA เวอร์ชันที่ รองรับ OM SDK พร้อมกับ แท็กโฆษณาทดสอบ

คุณควรเห็น <AdVerifications> ที่แสดงในคำตอบ VAST

ลงทะเบียนการกีดขวางโอเวอร์เลย์ส่วนควบคุมวิดีโอ

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

ดูตัวอย่างการวางซ้อนส่วนควบคุมวิดีโอได้ในรูปภาพต่อไปนี้เกี่ยวกับการแสดงผลส่วนควบคุมของแอป YouTube

รูปภาพตัวอย่างการวางซ้อนการวัดผล

เมื่อใช้ IMA SDK ผู้เผยแพร่โฆษณาส่วนใหญ่จะใช้ส่วนควบคุมเหล่านี้โดยการเพิ่มมุมมองเหนือคอนเทนเนอร์แสดงโฆษณาซึ่งส่วนใหญ่เป็นแบบโปร่งใส โดยปกติแล้วส่วนควบคุมจะเป็นองค์ประกอบย่อยของมุมมองนี้ซึ่งบดบังวิดีโอเพลเยอร์ที่อยู่ด้านล่างอย่างสมบูรณ์ โอเวอร์เลย์โปร่งใสนี้ใช้เพื่อบันทึกเหตุการณ์การแตะ แล้วแสดงผลส่วนควบคุมแก่ผู้ใช้เมื่อมีการแตะ

เมื่อมีการคำนวณการมองเห็นโฆษณาโดยใช้ Open Measurement SDK การแสดงผลทั้งหมดที่ซ้อนทับองค์ประกอบสื่อจะถือเป็นการกีดขวางและลดอัตราการมองเห็นโฆษณา ในกรณีที่โอเวอร์เลย์การแตะแบบโปร่งใสอยู่เหนือคอนเทนเนอร์แสดงโฆษณาทั้งหมด พื้นที่โฆษณาอาจได้รับการประกาศว่ามองเห็นไม่ได้เลย

Open Measurement SDK มีข้อกำหนดให้พิจารณาส่วนควบคุมวิดีโอเป็นการกีดขวาง "ที่เป็นมิตร" ซึ่งจำเป็นต่อประสบการณ์ของผู้ใช้ เมื่อลงทะเบียนเป็นส่วนควบคุมที่เป็นมิตรแล้ว ระบบจะไม่รวมส่วนควบคุมเหล่านี้ในการวัดการมองเห็นโฆษณา

IMA SDK ได้เปิดตัว API สำหรับลงทะเบียนโอเวอร์เลย์เหล่านี้กับ Open Measurement SDK การวัดผล โดยได้รับการสนับสนุนจาก IAB และ MRC ส่วนควบคุมเหล่านี้ต้องเป็นโอเวอร์เลย์โปร่งใสทั้งหมดหรือปุ่มขนาดเล็ก ห้ามลงทะเบียนมุมมองอื่นๆ ที่ไม่เกี่ยวข้องกับส่วนควบคุมวิดีโอ

สิ่งที่ควรจดทะเบียน ห้ามลงทะเบียน
  • โอเวอร์เลย์โปร่งใสเพื่อบันทึกการแตะของผู้ใช้
  • ปุ่มชั่วคราว
    • หยุดชั่วคราว
    • Google Play
    • เต็มหน้าจอ
    • แคสต์/AirPlay
    • ยุบ
    • ความคืบหน้า/ค้นหา
    • การดำเนินการอื่นๆ ที่เกี่ยวข้องกับการเล่น
  • ลายน้ำ
  • ป๊อปอัป
  • กล่องโต้ตอบ
  • ปุ่มที่ไม่ชั่วคราว
  • มุมมองอื่นๆ ที่บดบัง

โค้ดตัวอย่างต่อไปนี้แสดงวิธีลงทะเบียนโอเวอร์เลย์ส่วนควบคุมวิดีโอในคอนเทนเนอร์แสดงโฆษณา

Objective-C

- (void)registerObstructionsForContainer:(IMAAdDisplayContainer *)displayContainer {
    UIView *transparentTapOverlay = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 300, 250)];
    UIButton *myPauseButton = [[UIButton alloc] initWithFrame:CGRectMake(0, 0, 50, 10)];
    IMAFriendlyObstruction *overlayObstruction =
          [[IMAFriendlyObstruction alloc] initWithView:transparentTapOverlay
                                               purpose:IMAFriendlyObstructionPurposeNotVisible
                                        detailedReason:@"This overlay is transparent"];
    IMAFriendlyObstruction *pauseButtonObstruction =
          [[IMAFriendlyObstruction alloc] initWithView:myPauseButton
                                               purpose:IMAFriendlyObstructionPurposeMediaControls
                                        detailedReason:@"This is the video player pause button"];

    [displayContainer registerFriendlyObstruction:overlayObstruction];
    [displayContainer registerFriendlyObstruction:pauseButtonObstruction];
}

Swift

func registerObstructions(displayContainer: IMAAdDisplayContainer) {
  let transparentTapOverlay = UIView(frame: CGRect(x: 0, y: 0, width: 300, height: 250))
  let myPauseButton = UIButton(frame: CGRect(x: 0, y: 0, width: 50, height: 10))

  let overlayObstruction = IMAFriendlyObstruction(
    view: transparentTapOverlay,
    purpose: .notVisible,
    detailedReason: "This overlay is transparent")

  let pauseButtonObstruction = IMAFriendlyObstruction(
    view: myPauseButton,
    purpose: .mediaControls,
    detailedReason: "This is the video player pause button")

  displayContainer.register(overlayObstruction)
  displayContainer.register(pauseButtonObstruction)
}

เมื่อใช้งานเสร็จแล้ว คุณสามารถนำการกีดขวางเหล่านี้ออกได้โดยเรียกใช้เมธอดต่อไปนี้

Objective-C

- (void)unregisterObstructionsForContainer:(IMAAdDisplayContainer *)displayContainer {
    // This removes all previously registered friendly obstructions from the container.
    [displayContainer unregisterAllFriendlyObstructions];
}

Swift

func unregisterObstructions(displayContainer: IMAAdDisplayContainer) {
  // This removes all previously registered friendly obstructions from the container.
  displayContainer.unregisterAllFriendlyObstructions()
}