รูปแบบโฆษณาเนทีฟที่กำหนดเองประเภท Display และการวัดผลแบบเปิด

คู่มือนี้อธิบายวิธีผสานรวมรูปแบบโฆษณาเนทีฟที่กำหนดเองกับการวัดผลแบบเปิด

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

ก่อนดำเนินการต่อ ให้ทำดังนี้

การผสานรวม

หากคุณวางแผนที่จะใช้ Open Measurement กับรูปแบบโฆษณาเนทีฟที่กำหนดเองซึ่ง ไม่มีชิ้นงานวิดีโอ คุณจะต้องรับผิดชอบในการเรียกใช้ Open Measurement API ด้วยตนเอง

หากใช้รูปแบบโฆษณาเนทีฟที่กำหนดเองกับชิ้นงานวิดีโอ คุณไม่จำเป็นต้อง ทำตามคำแนะนำนี้ เนื่องจาก Mobile Ads SDK จะติดตามการมองเห็นชิ้นงานวิดีโอใน นามของคุณ

โหลดโฆษณา

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

Java

private void loadCustomNativeAd(Context context, ViewGroup nativeCustomFormatAdContainer) {

  AdLoader adLoader =
      new AdLoader.Builder(context, "AD_UNIT_ID")
          .forCustomFormatAd(
              "CUSTOM_TEMPLATE_ID",
              new NativeCustomFormatAd.OnCustomFormatAdLoadedListener() {
                @Override
                public void onCustomFormatAdLoaded(@NonNull NativeCustomFormatAd ad) {
                  // Show the ad first and then register your view and begin open measurement.
                  // Make sure to do this on the main thread.

                  // ...
                  // Show ad
                  // ...

                  startOpenMeasurement(ad, nativeCustomFormatAdContainer);
                }
              },
              new NativeCustomFormatAd.OnCustomClickListener() {
                @Override
                public void onCustomClick(NativeCustomFormatAd ad, String assetName) {
                  // Handle the click action
                }
              })
          .build();
  adLoader.loadAd(new AdRequest.Builder().build());
}

Kotlin

private fun loadCustomNativeAd(context: Context, nativeCustomFormatAdContainer: ViewGroup) {
  val adLoader =
    AdLoader.Builder(context, "AD_UNIT_ID")
      .forCustomFormatAd(
        "CUSTOM_TEMPLATE_ID",
        NativeCustomFormatAd.OnCustomFormatAdLoadedListener { ad ->
          // Show the ad first and then register your view and begin open measurement. Make sure
          // to do this on the main thread.

          // ...
          // Show ad
          // ...

          startOpenMeasurement(ad, nativeCustomFormatAdContainer)
        },
        NativeCustomFormatAd.OnCustomClickListener { ad, assetName ->
          // Handle the click action.
        },
      )
      .build()

  adLoader.loadAd(AdRequest.Builder().build())
}

แทนที่ AD_UNIT_ID และ CUSTOM_TEMPLATE_ID ด้วยรหัสหน่วยโฆษณาและรหัสเทมเพลตที่กำหนดเอง

ลงทะเบียนมุมมองและเริ่มวัด

หากต้องการเปิดใช้การวัดผลแบบเปิดในโฆษณาเนทีฟที่กำหนดเอง ให้แสดงโฆษณาก่อน จากนั้น ลงทะเบียนมุมมองโฆษณาที่กำหนดเองด้วยออบเจ็กต์ DisplayOpenMeasurement ที่เชื่อมโยง กับโฆษณาเนทีฟที่กำหนดเอง ออบเจ็กต์ DisplayOpenMeasurement มีเมธอด setView() สำหรับลงทะเบียนมุมมองคอนเทนเนอร์กับการวัดผลแบบเปิด

นอกจากนี้ คุณยังต้องบอก SDK อย่างชัดเจนให้เริ่มวัดโฆษณา โดยเรียกใช้เมธอด start() ในออบเจ็กต์ DisplayOpenMeasurement ของโฆษณาเนทีฟที่กำหนดเอง ต้องเรียกใช้เมธอด start() จากเทรดหลัก และการเรียกใช้ครั้งต่อๆ ไปจะไม่มีผล

นี่คือลักษณะของแท็บ

Java

private void startOpenMeasurement(
    NativeCustomFormatAd ad, ViewGroup nativeCustomFormatAdContainer) {
  DisplayOpenMeasurement displayOpenMeasurement = ad.getDisplayOpenMeasurement();
  if (displayOpenMeasurement != null) {
    displayOpenMeasurement.setView(nativeCustomFormatAdContainer);
    displayOpenMeasurement.start();
  }
}

Kotlin

private fun startOpenMeasurement(
  ad: NativeCustomFormatAd,
  nativeCustomFormatAdContainer: ViewGroup,
) {
  ad.getDisplayOpenMeasurement()?.let { displayOpenMeasurement ->
    displayOpenMeasurement.setView(nativeCustomFormatAdContainer)
    displayOpenMeasurement.start()
  }
}

โปรดทราบว่าคุณควรแสดงโฆษณาก่อนที่จะบันทึกการดู การแสดงโฆษณา ครอบคลุมอยู่ในรูปแบบโฆษณาเนทีฟที่กำหนดเอง

customTemplateAdFrame เลย์เอาต์คือคอนเทนเนอร์โฆษณาสำหรับโฆษณาเนทีฟที่กำหนดเอง และต้องมีชิ้นงานทั้งหมด ภายในกรอบล้อมรอบของมุมมอง

ของ IAB

รับรองกับ IAB

เมื่อเผยแพร่แอปแล้ว คุณจะเริ่มได้รับข้อมูลการวัดผล แต่ข้อมูลจะไม่ได้รับการรับรองจนกว่าคุณจะทำตามกระบวนการรับรองของ IAB ให้เสร็จสมบูรณ์