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

กรอกข้อมูลในแบบฟอร์ม แล้วคลิกสร้าง เพื่อเพิ่มโปรเจ็กต์

ไปที่การสร้างรายได้จาก Unity Ads แล้วคลิกเริ่มต้นใช้งาน

ในโมดัลโปรเจ็กต์ใหม่ ให้เลือกฉันจะใช้สื่อกลาง และGoogle AdMob สำหรับพาร์ทเนอร์สื่อกลาง แล้วคลิกถัดไป

เลือกตัวเลือกสำหรับการตั้งค่าโฆษณา แล้วคลิกถัดไป

เลือกการตั้งค่าตำแหน่ง แล้วคลิกถัดไป
การเสนอราคา

น้ำตก

กรอกข้อมูลในแบบฟอร์ม แล้วคลิกเพิ่มโปรเจ็กต์

จดบันทึกรหัสเกม

สร้างหน่วยโฆษณาและตำแหน่ง
ไปที่การสร้างรายได้จาก Unity Ads > ตำแหน่ง แล้วเลือก โปรเจ็กต์และคลิกเพิ่มหน่วยโฆษณา

ป้อนชื่อหน่วยโฆษณา แล้วเลือกแพลตฟอร์ม และรูปแบบโฆษณา

ไปที่การสร้างรายได้ > ตำแหน่ง แล้วคลิกเพิ่มหน่วยโฆษณา

ป้อนชื่อหน่วยโฆษณา แล้วเลือกแพลตฟอร์ม และรูปแบบโฆษณา

เลือกWaterfall สำหรับการตั้งค่า ในส่วนตำแหน่ง ให้ป้อน ชื่อตำแหน่ง การติดแท็กทางภูมิศาสตร์ และเป้าหมาย

จดบันทึกรหัสตำแหน่ง
สุดท้าย ให้คลิกเพิ่มหน่วยโฆษณา เพื่อบันทึกหน่วยโฆษณาและตำแหน่ง
ค้นหาคีย์ API การรายงานของ Unity Ads
การเสนอราคา
ขั้นตอนนี้ไม่จำเป็นสำหรับการผสานรวมการเสนอราคา
น้ำตก
ไปที่การสร้างรายได้จาก Unity Ads > การจัดการ API แล้วจดบันทึกคีย์ API ในการเข้าถึง Monetization Stats API

จากนั้นไปที่การสร้างรายได้จาก Unity Ads > การตั้งค่าองค์กร แล้วจดบันทึกรหัสหลักขององค์กร

อัปเดต app-ads.txt
ผู้ขายที่ได้รับอนุญาตสำหรับแอป app-ads.txt เป็นความคิดริเริ่มของ IAB Tech Lab ที่ช่วยตรวจสอบว่าคุณจะขายพื้นที่โฆษณาแอปผ่านช่องทางที่คุณระบุว่าได้รับอนุญาตเท่านั้น คุณจะต้องใช้ไฟล์ app-ads.txt เพื่อป้องกันไม่ให้เสียรายได้จากโฆษณาเป็นจำนวนมาก
หากยังไม่ได้สร้าง ให้สร้างไฟล์ app-ads.txt สำหรับ Ad Manager
หากต้องการใช้ app-ads.txt สำหรับ Unity Ads โปรดดู
การตั้งค่า app-ads.txt เป็นครั้งแรก
เปิดโหมดทดสอบ
คุณเปิดใช้โหมดทดสอบได้จาก แดชบอร์ด Unity Ads ไปที่การสร้างรายได้จาก Unity Ads > การทดสอบ
คุณบังคับใช้โหมดทดสอบสำหรับแอปได้โดยคลิกปุ่มแก้ไขข้าง Google Play Store เปิดใช้ ลบล้างโหมดทดสอบของไคลเอ็นต์ แล้วเลือก บังคับใช้โหมดทดสอบ (เช่น ใช้โฆษณาทดสอบ) สำหรับอุปกรณ์ทั้งหมด

หรือจะเปิดใช้โหมดทดสอบสำหรับอุปกรณ์บางเครื่องโดยคลิกเพิ่มอุปกรณ์ทดสอบ ก็ได้

ป้อนรายละเอียดอุปกรณ์ทดสอบ แล้วคลิกบันทึก

ขั้นตอนที่ 2: ตั้งค่าดีมานด์ของ Unity Ads ใน UI ของ Ad Manager
ลงชื่อเข้าใช้บัญชี Ad Manager
เพิ่ม Unity Ads ในบริษัท
การเสนอราคา
ขั้นตอนนี้ไม่จำเป็นสำหรับการผสานรวมการเสนอราคา
น้ำตก
ไปที่ผู้ดูแลระบบ > บริษัท แล้วคลิกปุ่มบริษัทใหม่ ในแท็บบริษัททั้งหมด เลือกเครือข่ายโฆษณา

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

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

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

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

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

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

เลือก Unity Ads เป็นผู้เสนอราคา

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

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

เลือกบริษัทสำหรับ Unity Ads

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

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

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

เลือกบริษัทที่คุณสร้างขึ้นสำหรับ Unity Ads ในส่วนก่อนหน้า เลือกสื่อกลาง SDK บนอุปกรณ์เคลื่อนที่ เป็นประเภทการผสานรวม, Android เป็นแพลตฟอร์ม และใช้งานอยู่ เป็นสถานะ
ป้อน รหัสเกม และ รหัสตำแหน่ง ที่ได้รับในส่วนก่อนหน้า รวมถึงค่าCPM เริ่มต้น คลิกบันทึก

หมายเหตุ: การเก็บรวบรวมข้อมูลอัตโนมัติต้องใช้เวลารวบรวมข้อมูล 2-3 วันก่อนที่ จะคำนวณค่า CPM แบบไดนามิกสำหรับเครือข่ายสื่อกลางได้อย่างแม่นยำ เมื่อคำนวณ eCPM ได้แล้ว ระบบจะอัปเดตข้อมูลให้คุณโดยอัตโนมัติ
เพิ่ม Unity Ads ลงในรายชื่อพาร์ทเนอร์โฆษณาตามกฎระเบียบ GDPR และกฎระเบียบของรัฐในสหรัฐอเมริกา
ทำตามขั้นตอนในการ ตั้งค่ากฎระเบียบของยุโรป และ การตั้งค่ากฎระเบียบของรัฐในสหรัฐอเมริกา เพื่อเพิ่ม Unity Ads ลงใน รายชื่อพาร์ทเนอร์โฆษณาตามกฎระเบียบของยุโรปและรัฐในสหรัฐอเมริกาใน UI ของ Ad Manager
ขั้นตอนที่ 3: นำเข้า Unity Ads SDK และอะแดปเตอร์
การผสานรวมกับ Android Studio (แนะนำ)
ในไฟล์ Gradle ระดับแอป ให้เพิ่มการกำหนดค่าและการพึ่งพาการติดตั้งใช้งานต่อไปนี้
Kotlin
dependencies { implementation("com.google.android.libraries.ads.mobile.sdk:ads-mobile-sdk:0.25.0-beta01") implementation("com.unity3d.ads:unity-ads:4.16.5") implementation("com.google.ads.mediation:unity:4.17.0.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.unity3d.ads:unity-ads:4.16.5' implementation 'com.google.ads.mediation:unity:4.17.0.0' } configurations.configureEach { exclude group: 'com.google.android.gms', module: 'play-services-ads' exclude group: 'com.google.android.gms', module: 'play-services-ads-lite' }
การผสานรวมด้วยตนเอง
ดาวน์โหลด Unity Ads SDK (
unity-ads.aar) เวอร์ชันล่าสุดจากที่เก็บ GitHub แล้วเพิ่มลงในโปรเจ็กต์ไปที่ อาร์ติแฟกต์อะแดปเตอร์ Unity Ads ในที่เก็บ Maven ของ Google เลือกเวอร์ชันล่าสุด ดาวน์โหลดไฟล์
.aarของอะแดปเตอร์ Unity Ads แล้วเพิ่มลงในโปรเจ็กต์
ขั้นตอนที่ 4: ใช้การตั้งค่าความเป็นส่วนตัวใน Unity Ads SDK
ความยินยอมจากผู้ใช้ในสหภาพยุโรปและ GDPR
เพื่อปฏิบัติตาม นโยบายความยินยอมของผู้ใช้ EU ของ Google คุณต้องเปิดเผยข้อมูลบางอย่างต่อ ผู้ใช้ในเขตเศรษฐกิจยุโรป (EEA), สหราชอาณาจักร และสวิตเซอร์แลนด์ รวมถึงขอรับ ความยินยอมจากผู้ใช้สำหรับการใช้คุกกี้หรือพื้นที่เก็บข้อมูลอื่นๆ ในเครื่องตามที่กฎหมาย กำหนด และสำหรับการเก็บรวบรวม การแชร์ และการใช้ข้อมูลส่วนตัวเพื่อการปรับโฆษณาตาม โปรไฟล์ของผู้ใช้ นโยบายนี้เป็นผลมาจากข้อกำหนดด้าน ePrivacy และกฎระเบียบให้ความคุ้มครองข้อมูลส่วนบุคคลของผู้บริโภค (GDPR) ของสหภาพยุโรป คุณมีหน้าที่ ตรวจสอบว่ามีการส่งต่อความยินยอมไปยังแหล่งที่มาของโฆษณาแต่ละแห่งใน เชนสื่อกลาง (Mediation Chain) Google ไม่สามารถส่งต่อตัวเลือกความยินยอมของผู้ใช้ไปยังเครือข่ายดังกล่าวโดยอัตโนมัติ
ใน SDK เวอร์ชัน 2.0.0 Unity Ads ได้เพิ่ม API เพื่อรองรับการตั้งค่าความเป็นส่วนตัว โค้ดตัวอย่างต่อไปนี้แสดงวิธีส่งข้อมูลความยินยอมนี้ไปยัง Unity Ads SDK หากเลือกส่งข้อมูลความยินยอมไปยัง Unity Ads SDK ด้วยตนเอง เราขอแนะนำให้เรียกใช้โค้ดนี้ก่อนที่จะขอโฆษณาผ่าน GMA Next-Gen SDK
Java
MetaData gdprMetaData = new MetaData(this);
gdprMetaData.set("gdpr.consent", true);
gdprMetaData.commit();
Kotlin
val gdprMetaData = MetaData(this)
gdprMetaData["gdpr.consent"] = true
gdprMetaData.commit()
ดูรายละเอียดเพิ่มเติมและค่าที่ระบุได้ในแต่ละเมธอดได้ที่ การปฏิบัติตามข้อกำหนด GDPR ของ Unity Ads
กฎหมายคุ้มครองความเป็นส่วนตัวของรัฐในสหรัฐอเมริกา
กฎหมายคุ้มครองความเป็นส่วนตัวของรัฐในสหรัฐอเมริกา กำหนดให้ผู้ใช้มีสิทธิ์ เลือกไม่รับ "การขาย" "ข้อมูลส่วนบุคคล" ของตน (ตามที่กฎหมายให้คำจำกัดความ ไว้) โดยเว็บไซต์จะต้องให้ตัวเลือกไม่รับการขายผ่านลิงก์ "ไม่อนุญาตให้ขายข้อมูลส่วนบุคคลของฉัน" ที่แสดงไว้อย่างชัดเจนบนหน้าแรกของฝ่ายที่ทำ "การขาย" คู่มือการปฏิบัติตามกฎหมายความเป็นส่วนตัวของรัฐในสหรัฐอเมริกาช่วยให้คุณเปิดใช้การประมวลผลข้อมูลแบบจำกัดสำหรับการแสดงโฆษณา Google ได้ แต่ Google ไม่สามารถใช้การตั้งค่านี้กับเครือข่ายโฆษณาแต่ละเครือข่ายในเชนสื่อกลาง ดังนั้น คุณต้องระบุเครือข่ายโฆษณาแต่ละเครือข่ายในเชนสื่อกลางที่อาจเข้าร่วมในการขายข้อมูลส่วนบุคคล และทำตามคำแนะนำจากเครือข่ายเหล่านั้นเพื่อให้มั่นใจว่ามีการปฏิบัติตามข้อกำหนด
ใน SDK เวอร์ชัน 2.0.0 Unity Ads ได้เพิ่ม API เพื่อรองรับการตั้งค่าความเป็นส่วนตัว โค้ดตัวอย่างต่อไปนี้แสดงวิธีส่งข้อมูลความยินยอมนี้ไปยัง Unity Ads SDK หากเลือกส่งข้อมูลความยินยอมไปยัง Unity Ads SDK ด้วยตนเอง เราขอแนะนำให้เรียกใช้โค้ดนี้ก่อนที่จะขอโฆษณาผ่าน GMA Next-Gen SDK
Java
MetaData ccpaMetaData = new MetaData(this);
ccpaMetaData.set("privacy.consent", true);
ccpaMetaData.commit();
Kotlin
val ccpaMetaData = MetaData(this)
ccpaMetaData["privacy.consent"] = true
ccpaMetaData.commit()
ดูรายละเอียดเพิ่มเติมและค่าที่ระบุได้ในแต่ละเมธอดได้ที่ การปฏิบัติตามข้อกำหนดกฎหมายคุ้มครองความเป็นส่วนตัวของผู้บริโภคของ Unity Ads
ขั้นตอนที่ 5: เพิ่มโค้ดที่จำเป็น
โหลดโฆษณาด้วยบริบทกิจกรรม
ส่งบริบท Activity เมื่อโหลดรูปแบบโฆษณาแบนเนอร์ โฆษณาคั่นระหว่างหน้า และโฆษณาเนทีฟ
หากไม่มีบริบทกิจกรรม การโหลดโฆษณาจะล้มเหลว
ขั้นตอนที่ 6: ทดสอบการติดตั้งใช้งาน
เปิดใช้โฆษณาทดสอบ
ตรวจสอบว่าคุณได้ ลงทะเบียนอุปกรณ์ทดสอบ สำหรับ Ad Manager และ เปิดใช้โหมดทดสอบใน UI ของ Unity Ads แล้ว
ยืนยันโฆษณาทดสอบ
หากต้องการยืนยันว่าคุณได้รับโฆษณาทดสอบจาก Unity Ads ให้เปิดใช้ การทดสอบแหล่งที่มาของโฆษณาแหล่งเดียว ในเครื่องมือตรวจสอบโฆษณาโดยใช้แหล่งที่มาของโฆษณา Unity Ads (การเสนอราคา) และ Unity Ads (การแสดงวิดีโอตามลำดับขั้น)
รหัสข้อผิดพลาด
หากอะแดปเตอร์ไม่ได้รับโฆษณาจาก Unity Ads ผู้เผยแพร่โฆษณาสามารถตรวจสอบข้อผิดพลาดพื้นฐานจากการตอบกลับของโฆษณาโดยใช้
ResponseInfo.getAdSourceResponses()
ในคลาสต่อไปนี้
com.google.ads.mediation.unity.UnityAdapter
com.google.ads.mediation.unity.UnityMediationAdapter
ต่อไปนี้คือรหัสและข้อความที่อะแดปเตอร์ UnityAds แสดงเมื่อโหลดโฆษณาไม่สำเร็จ
| รหัสข้อผิดพลาด | เหตุผล |
|---|---|
| 0-10 | UnityAds SDK แสดงข้อผิดพลาด ดูรายละเอียดเพิ่มเติมได้จากโค้ด |
| 101 | พารามิเตอร์เซิร์ฟเวอร์ UnityAds ที่กำหนดค่าไว้ใน UI ของ Ad Manager ขาดหายไป/ไม่ถูกต้อง |
| 102 | UnityAds แสดงตำแหน่งที่มีสถานะ NO_FILL |
| 103 | UnityAds แสดงตำแหน่งที่มีสถานะ DISABLED |
| 104 | UnityAds พยายามแสดงโฆษณาที่มีบริบทเป็น Null |
| 105 | บริบทที่ใช้เริ่มต้น โหลด และ/หรือแสดงโฆษณาจาก Unity Ads ไม่ใช่อินสแตนซ์กิจกรรม |
| 106 | UnityAds พยายามแสดงโฆษณาที่ยังไม่พร้อมแสดง |
| 107 | อุปกรณ์ไม่รองรับ UnityAds |
| 108 | UnityAds โหลดโฆษณาได้เพียง 1 รายการต่อตำแหน่งในแต่ละครั้ง |
| 109 | UnityAds เสร็จสมบูรณ์ด้วยสถานะ ERROR |
| 200-204 | ข้อผิดพลาดเฉพาะของแบนเนอร์ UnityAds ดูรายละเอียดเพิ่มเติมได้จากโค้ด |