คู่มือนี้จะแสดงวิธีใช้ GMA Next-Gen SDK เพื่อโหลดและแสดง โฆษณาจาก DT Exchange โดยใช้ สื่อกลาง, ซึ่งครอบคลุมการผสานรวมแบบ Waterfall โดยจะครอบคลุมวิธีเพิ่ม DT Exchange ลงในการกำหนดค่าสื่อกลางของหน่วยโฆษณา และวิธีผสานรวม DT SDK และอะแดปเตอร์เข้ากับแอป Android
การผสานรวมและรูปแบบโฆษณาที่รองรับ
อะแดปเตอร์สื่อกลางสำหรับ DT Exchange มีความสามารถดังนี้
| การผสานรวม | |
|---|---|
| การเสนอราคา | 1 |
| Waterfall | |
| รูปแบบ | |
| แบนเนอร์ | |
| โฆษณาคั่นระหว่างหน้า | |
| ได้รับรางวัลแล้ว | |
| เนทีฟ | |
1 การผสานรวมการเสนอราคาอยู่ในโปรแกรมเบต้าแบบปิด โปรดติดต่อผู้จัดการฝ่ายดูแลลูกค้าเพื่อ ขอสิทธิ์เข้าถึง
ข้อกำหนด
- Android API ระดับ 24 ขึ้นไป
ขั้นตอนที่ 1: ตั้งค่าการกำหนดค่าใน UI ของ DT Exchange
เพิ่มแอปและตำแหน่งโฆษณาใหม่
ลงชื่อสมัครใช้ หรือ เข้าสู่ระบบ ไปยัง DT Exchange Console
คลิกเพิ่มแอป

เลือกแพลตฟอร์มและตำแหน่งโฆษณา กรอกข้อมูลในแบบฟอร์มที่เหลือ แล้วคลิกสร้างแอป

ป้อนชื่อและเลือกประเภทสำหรับตำแหน่งโฆษณา จากนั้นคลิกบันทึกตำแหน่งโฆษณา
รหัสแอปและรหัสตำแหน่งโฆษณา
วางเมาส์เหนือแถบการนำทางด้านซ้ายเพื่อเปิด จากนั้นคลิกการจัดการแอป

ในหน้าการจัดการแอป ให้จดรหัสแอป ข้างแอปของคุณ

เลือกแอปแล้วไปที่แท็บตำแหน่งโฆษณา จดรหัสตำแหน่งโฆษณา
รหัสผู้เผยแพร่โฆษณา, Consumer Key และ Consumer Secret
คลิกชื่อผู้ใช้จากเมนูด้านซ้าย แล้วเลือกโปรไฟล์ผู้ใช้

จดรหัสผู้เผยแพร่โฆษณา Consumer Key และ Consumer Secret ไว้ เนื่องจากคุณจะต้องใช้ข้อมูลเหล่านี้ในขั้นตอนถัดไป
อัปเดต app-ads.txt
ผู้ขายที่ได้รับอนุญาตสำหรับแอป app-ads.txt เป็นความคิดริเริ่มของ IAB Tech Lab ที่ช่วยตรวจสอบว่าคุณจะขายพื้นที่โฆษณาแอปผ่านช่องทางที่คุณได้รับอนุญาตเท่านั้น คุณจะต้องใช้ไฟล์ app-ads.txt เพื่อป้องกันไม่ให้เสียรายได้จากโฆษณาเป็นจำนวนมาก
หากยังไม่ได้สร้างไฟล์ app-ads.txt สำหรับ Ad Manager ให้สร้างเลย
หากต้องการใช้ app-ads.txt สำหรับ DT Exchange,
ให้เพิ่ม DT ลงในไฟล์ app-ads.txt
ขั้นตอนที่ 2: ตั้งค่าดีมานด์ DT Exchange ใน UI ของ Ad Manager
ลงชื่อเข้าใช้บัญชี Ad Manager
เพิ่ม DT Exchange ในส่วนบริษัท
การเสนอราคา
ขั้นตอนนี้ไม่จำเป็นสำหรับการผสานรวมการเสนอราคา
Waterfall
ไปที่ผู้ดูแลระบบ > บริษัท แล้วคลิกปุ่มบริษัทใหม่ ในแท็บบริษัททั้งหมด เลือกเครือข่ายโฆษณา

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

เปิดใช้การแชร์สัญญาณที่ปลอดภัย
การเสนอราคา
ไปที่ผู้ดูแลระบบ > การตั้งค่าส่วนกลาง ไปที่แท็บการตั้งค่าบัญชี Ad Exchange แล้วตรวจสอบและเปิดการแชร์สัญญาณที่ปลอดภัย คลิกบันทึก

Waterfall
ขั้นตอนนี้ไม่จำเป็นสำหรับการผสานรวมแบบ Waterfall
แชร์สัญญาณที่ปลอดภัยในคำขอราคาเสนอ
การเสนอราคา
ไปที่พื้นที่โฆษณา > สัญญาณที่ปลอดภัย ในส่วนสัญญาณที่ปลอดภัย, ให้ค้นหา DT Exchange (การสร้างรายได้จาก Fyber) แล้วเปิดเปิดใช้การผสานรวมแอป

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

คลิกบันทึก
Waterfall
ขั้นตอนนี้ไม่จำเป็นสำหรับการผสานรวมแบบ Waterfall
กำหนดค่าการเสนอราคา DT Exchange
การเสนอราคา
ไปที่การแสดงโฆษณา > ผู้เสนอราคา แล้วคลิกไปที่การเสนอราคา SDK

คลิกผู้เสนอราคารายใหม่

เลือก DT Exchange เป็นผู้เสนอราคา

คลิกดำเนินการต่อ เพื่อเปิดใช้การเสนอราคา SDK สำหรับผู้เสนอราคารายนี้

คลิกเสร็จสิ้น
Waterfall
ขั้นตอนนี้ไม่จำเป็นสำหรับการผสานรวมแบบ Waterfall
กำหนดค่าการแมปหน่วยโฆษณา
การเสนอราคา
ไปที่การแสดงโฆษณา > ผู้เสนอราคา แล้วคลิกไปที่การเสนอราคา SDK

เลือกบริษัทสำหรับ DT Exchange

ไปที่แท็บการแมปหน่วยโฆษณา แล้วคลิกการแมปหน่วยโฆษณาใหม่

เลือกหน่วยโฆษณาที่เฉพาะเจาะจง เลือกหน่วยโฆษณาและรูปแบบ แอปบนอุปกรณ์เคลื่อนที่ เป็น ประเภทพื้นที่โฆษณา และแอปพลิเคชันบนอุปกรณ์เคลื่อนที่ จากนั้นป้อนรหัสแอปพลิเคชัน และรหัสตำแหน่งโฆษณา ที่ได้รับในส่วนก่อนหน้า
สุดท้ายให้คลิกบันทึก
ต้อง เชื่อมโยงกับแอปเป้าหมายตามที่แสดงใน UI ของ DT Exchange
Waterfall
ไปที่การแสดงโฆษณา > กลุ่มผลตอบแทน แล้วคลิกปุ่มกลุ่มผลตอบแทนใหม่ เลือกแอปพลิเคชันบนอุปกรณ์เคลื่อนที่

เลื่อนลงแล้วคลิกเพิ่มพาร์ทเนอร์ผลตอบแทน

เลือกบริษัทที่คุณสร้างขึ้นสำหรับ DT Exchange ในส่วนก่อนหน้า เลือกสื่อกลาง SDK บนอุปกรณ์เคลื่อนที่ เป็นประเภทการผสานรวม, Android เป็นแพลตฟอร์ม และใช้งานอยู่ เป็นสถานะ
ป้อน รหัสแอปพลิเคชัน และ รหัสตำแหน่งโฆษณา ที่ได้รับในส่วนก่อนหน้า รวมถึงค่า CPM เริ่มต้น คลิกบันทึก
ต้องเชื่อมโยงกับแอปเป้าหมายตามที่แสดงใน UI ของ DT Exchange
หมายเหตุ: การเก็บรวบรวมข้อมูลอัตโนมัติต้องใช้เวลารวบรวมข้อมูล 2-3 วันก่อนที่ จะคำนวณค่า CPM แบบไดนามิกสำหรับเครือข่ายสื่อกลางได้อย่างแม่นยำ เมื่อคำนวณ eCPM ได้แล้ว ระบบจะอัปเดตข้อมูลให้คุณโดยอัตโนมัติ
เพิ่ม DT Exchange (การสร้างรายได้จาก Fyber) ลงในรายชื่อพาร์ทเนอร์โฆษณาตามกฎระเบียบ GDPR และกฎระเบียบของรัฐในสหรัฐอเมริกา
ทำตามขั้นตอนในการ ตั้งค่ากฎระเบียบของยุโรป และ การตั้งค่ากฎระเบียบของรัฐในสหรัฐอเมริกา เพื่อเพิ่ม DT Exchange (การสร้างรายได้จาก Fyber) ลงใน รายชื่อพาร์ทเนอร์โฆษณาตามกฎระเบียบของยุโรปและรัฐในสหรัฐอเมริกาใน UI ของ Ad Manager
ขั้นตอนที่ 3: นำเข้า DT SDK และอะแดปเตอร์
การผสานรวมกับ Android Studio (แนะนำ)
ในไฟล์ Gradle ระดับแอป ให้เพิ่มการกำหนดค่าและการพึ่งพาการใช้งานต่อไปนี้
Kotlin
dependencies { implementation("com.google.android.libraries.ads.mobile.sdk:ads-mobile-sdk:0.25.0-beta01") implementation("com.google.ads.mediation:fyber:8.4.3.0") } configurations.configureEach { exclude(group = "com.google.android.gms", module = "play-services-ads") exclude(group = "com.google.android.gms", module = "play-services-ads-lite") }
Groovy
dependencies { implementation 'com.google.android.libraries.ads.mobile.sdk:ads-mobile-sdk:0.25.0-beta01' implementation 'com.google.ads.mediation:fyber:8.4.3.0' } configurations.configureEach { exclude group: 'com.google.android.gms', module: 'play-services-ads' exclude group: 'com.google.android.gms', module: 'play-services-ads-lite' }
การผสานรวมด้วยตนเอง
- ดาวน์โหลด DT SDK เวอร์ชันล่าสุดสำหรับ Android แล้วเพิ่ม
fyber-marketplace-x.y.z.aarลงในโปรเจ็กต์ - ไปที่
อาร์ติแฟกต์อะแดปเตอร์ DT Exchange
ในที่เก็บ Maven ของ Google เลือกเวอร์ชันล่าสุด ดาวน์โหลดไฟล์
.aarของอะแดปเตอร์ DT Exchange แล้วเพิ่มลงในโปรเจ็กต์
ขั้นตอนที่ 4: ใช้การตั้งค่าความเป็นส่วนตัวใน DT SDK
ความยินยอมจากผู้ใช้ในสหภาพยุโรปและ GDPR
เพื่อปฏิบัติตาม นโยบายความยินยอมของผู้ใช้ EU ของ Google คุณต้องเปิดเผยข้อมูลบางอย่างต่อ ผู้ใช้ในเขตเศรษฐกิจยุโรป (EEA), สหราชอาณาจักร และสวิตเซอร์แลนด์ รวมถึงขอรับ ความยินยอมจากผู้ใช้สำหรับการใช้คุกกี้หรือพื้นที่เก็บข้อมูลอื่นๆ ในเครื่องตามที่กฎหมาย กำหนด และสำหรับการเก็บรวบรวม การแชร์ และการใช้ข้อมูลส่วนตัวเพื่อการปรับโฆษณาตาม โปรไฟล์ของผู้ใช้ นโยบายนี้เป็นผลมาจากข้อกำหนดด้าน ePrivacy และกฎระเบียบให้ความคุ้มครองข้อมูลส่วนบุคคลของผู้บริโภค (GDPR) ของสหภาพยุโรป คุณมีหน้าที่ ตรวจสอบว่ามีการส่งต่อความยินยอมไปยังแหล่งที่มาของโฆษณาแต่ละแห่งใน เชนสื่อกลาง (Mediation Chain) Google ไม่สามารถส่งต่อตัวเลือกความยินยอมของผู้ใช้ไปยังเครือข่ายดังกล่าวโดยอัตโนมัติ
ตั้งแต่ DT Exchange SDK เวอร์ชัน 8.3.0 เป็นต้นไป DT Exchange จะอ่านความยินยอมตาม GDPR ที่กำหนดโดยแพลตฟอร์มการจัดการความยินยอมซึ่งรองรับ ข้อกำหนดเกี่ยวกับความยินยอมเพิ่มเติมของ Googleโดยอัตโนมัติ ดูข้อมูลเพิ่มเติมได้ที่คู่มือการใช้งาน GDPR ของ DT Exchange
กฎหมายคุ้มครองความเป็นส่วนตัวของรัฐในสหรัฐอเมริกา
กฎหมายคุ้มครองความเป็นส่วนตัวของรัฐในสหรัฐอเมริกา กำหนดให้ผู้ใช้มีสิทธิ์ เลือกไม่รับ "การขาย" "ข้อมูลส่วนบุคคล" ของตน (ตามที่กฎหมายให้คำจำกัดความ ไว้) โดยเว็บไซต์จะต้องให้ตัวเลือกไม่รับการขายผ่านลิงก์ "ไม่อนุญาตให้ขายข้อมูลส่วนบุคคลของฉัน" ที่แสดงไว้อย่างชัดเจนบนหน้าแรกของฝ่ายที่ทำ "การขาย" คู่มือการปฏิบัติตามกฎหมายความเป็นส่วนตัวของรัฐในสหรัฐอเมริกาช่วยให้คุณเปิดใช้การประมวลผลข้อมูลแบบจำกัดสำหรับการแสดงโฆษณา Google ได้ แต่ Google ไม่สามารถใช้การตั้งค่านี้กับเครือข่ายโฆษณาแต่ละเครือข่ายในเชนสื่อกลาง ดังนั้น คุณต้องระบุเครือข่ายโฆษณาแต่ละเครือข่ายในเชนสื่อกลางที่อาจเข้าร่วมในการขายข้อมูลส่วนบุคคล และทำตามคำแนะนำจากเครือข่ายเหล่านั้นเพื่อให้มั่นใจว่ามีการปฏิบัติตามข้อกำหนด
DT Exchange มี API ที่ช่วยให้คุณส่งต่อความยินยอมของผู้ใช้ไปยัง SDK ของตนได้ โค้ดตัวอย่างต่อไปนี้แสดงวิธีส่งข้อมูลความยินยอมไปยัง DT SDK ด้วยตนเอง หากเลือกส่งข้อมูลความยินยอมไปยัง DT SDK ด้วยตนเอง เราขอแนะนำให้เรียกใช้โค้ดนี้ก่อนที่จะขอโฆษณาผ่าน GMA Next-Gen SDK
Java
Kotlin
แทนที่ US_PRIVACY_STRING ด้วยสตริงความเป็นส่วนตัวของสหรัฐอเมริกา
ดูรายละเอียดเพิ่มเติมและค่าที่อาจระบุในเมธอดได้ที่ คู่มือการใช้งาน CCPA ของ DT Exchange
ขั้นตอนที่ 5: เพิ่มโค้ดที่จำเป็น
โหลดโฆษณาด้วยบริบทกิจกรรม
ส่งบริบท Activity เมื่อโหลดรูปแบบโฆษณาคั่นระหว่างหน้า หากไม่มีบริบทกิจกรรม จำนวนโฆษณาจะล้มเหลว
ขั้นตอนที่ 6: ทดสอบการติดตั้งใช้งาน
เปิดใช้โฆษณาทดสอบ
ตรวจสอบว่าคุณได้ ลงทะเบียนอุปกรณ์ทดสอบ สำหรับ Ad Manager แล้ว
ยืนยันโฆษณาทดสอบ
หากต้องการยืนยันว่าคุณได้รับโฆษณาทดสอบจาก DT Exchange ให้เปิดใช้ การทดสอบแหล่งที่มาของโฆษณาแหล่งเดียว ในเครื่องมือตรวจสอบโฆษณาโดยใช้แหล่งที่มาของโฆษณา DT Exchange (การเสนอราคา) และ DT Exchange (Waterfall)
ขั้นตอนที่ไม่บังคับ
พารามิเตอร์เฉพาะเครือข่าย
อะแดปเตอร์ DT Exchange รองรับพารามิเตอร์คำขอเพิ่มเติมที่ส่งไปยังอะแดปเตอร์เป็น Android Bundle ได้ อะแดปเตอร์จะค้นหาคีย์ต่อไปนี้ใน Bundle
| พารามิเตอร์และค่าคำขอ | |
|---|---|
InneractiveMediationDefs.KEY_AGE
|
จำนวนเต็ม อายุของผู้ใช้ |
FyberMediationAdapter.KEY_MUTE_VIDEO
|
บูลีน ปิดหรือเปิดเสียงวิดีโอ |
ต่อไปนี้เป็นตัวอย่างโค้ดวิธีตั้งค่าพารามิเตอร์คำขอโฆษณาเหล่านี้
Java
Bundle extras = new Bundle();
extras.putInt(InneractiveMediationDefs.KEY_AGE, 10);
extras.putBoolean(FyberMediationAdapter.KEY_MUTE_VIDEO, false);
AdRequest request =
new AdRequest.Builder().addNetworkExtrasBundle(FyberMediationAdapter.class, extras).build();
Kotlin
val extras = Bundle()
extras.putInt(InneractiveMediationDefs.KEY_AGE, 10)
extras.putBoolean(FyberMediationAdapter.KEY_MUTE_VIDEO, false)
val request =
AdRequest.Builder().addNetworkExtrasBundle(FyberMediationAdapter::class.java, extras).build()
รหัสข้อผิดพลาด
หากอะแดปเตอร์รับโฆษณาจาก DT Exchange ไม่สำเร็จ คุณสามารถตรวจสอบข้อผิดพลาดพื้นฐานจากการตอบกลับของโฆษณาได้โดยใช้
ResponseInfo.getAdSourceResponses()
ในคลาสต่อไปนี้
com.google.ads.mediation.fyber.FyberMediationAdapter
ต่อไปนี้คือรหัสและข้อความที่อะแดปเตอร์ DT Exchange แสดงเมื่อโหลดโฆษณาไม่สำเร็จ
| รหัสข้อผิดพลาด | เหตุผล |
|---|---|
| 101 | พารามิเตอร์เซิร์ฟเวอร์ DT Exchange ที่กำหนดค่าไว้ใน UI ของ Ad Manager ขาดหายไป/ไม่ถูกต้อง |
| 103 | ขนาดโฆษณาที่ขอไม่ตรงกับขนาดแบนเนอร์ที่ DT Exchange รองรับ |
| 105 | DT SDK โหลดโฆษณาแล้วแต่แสดงผลคอนโทรลเลอร์ที่ไม่คาดคิด |
| 106 | โฆษณาไม่พร้อมแสดง |
| 107 | บริบทไม่ใช่อินสแตนซ์กิจกรรม |
| 200-399 | DT SDK แสดงข้อผิดพลาด ดูรายละเอียดเพิ่มเติมได้ที่ โค้ด |