ผสานรวม Unity Ads กับสื่อกลาง

คู่มือนี้แสดงวิธีใช้ SDK โฆษณาในอุปกรณ์เคลื่อนที่ของ Google เพื่อโหลดและแสดง โฆษณาจาก Unity Ads โดยใช้สื่อกลาง ซึ่งครอบคลุมการผสานรวม Waterfall ซึ่งครอบคลุมถึงวิธีเพิ่ม Unity Ads ลงใน การกำหนดค่าสื่อกลาง และวิธีผสานรวม SDK โฆษณา Unity และอะแดปเตอร์ แอป Flutter

การผสานรวมและรูปแบบโฆษณาที่รองรับ

AdMob อะแดปเตอร์สื่อกลางสำหรับ Unity Ads มี ความสามารถต่อไปนี้

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

ข้อกำหนด

  • SDK โฆษณาในอุปกรณ์เคลื่อนที่ของ Google เวอร์ชันล่าสุด
  • Flutter 3.7.0 ขึ้นไป
  • เพื่อทำให้ใช้งานได้ใน Android
    • API ของ Android ระดับ 21 ขึ้นไป
  • เพื่อทำให้ใช้งานได้บน iOS
    • เป้าหมายการติดตั้งใช้งาน iOS 12.0 ขึ้นไป
  • โปรเจ็กต์ที่ Flutter กำลังทำงานซึ่งกำหนดค่าด้วย Google SDK โฆษณาในอุปกรณ์เคลื่อนที่ โปรดดู เริ่มต้นใช้งานเพื่อดูรายละเอียด
  • ดำเนินการสื่อกลางให้เสร็จสิ้น คู่มือเริ่มต้นใช้งาน

ขั้นตอนที่ 1: กำหนดค่าใน UI ของ Unity Ads

ลงชื่อสมัครใช้หรือเข้าสู่ระบบ Unity Ads

สร้างโปรเจ็กต์

ในแดชบอร์ด Unity Ads ให้ไปที่ โปรเจ็กต์ แล้วคลิกสร้างโปรเจ็กต์

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

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

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

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

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

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

สร้างหน่วยโฆษณา

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

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

Android

iOS

สุดท้าย คลิกสร้างเพื่อบันทึกหน่วยโฆษณา

เพิ่มตำแหน่ง

การเสนอราคา

โปรดติดต่อผู้จัดการฝ่ายดูแลลูกค้าของ Google เพื่อสร้างตำแหน่งโฆษณาสำหรับการเสนอราคา

น้ำตก

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

กรอกรายละเอียดที่จำเป็นแล้วคลิกเพิ่มตำแหน่ง

จดรหัสตำแหน่งโฆษณาไว้

Android

iOS

ค้นหาคีย์ Unity Ads Reporting API

การเสนอราคา

ซึ่งไม่จำเป็นต้องทำขั้นตอนนี้สำหรับการผสานรวมการเสนอราคา

น้ำตก

นอกจากรหัสเกมและรหัสตำแหน่งแล้ว คุณจะต้องมี คีย์ API ของ Unity Ads และรหัสหลักขององค์กรสำหรับตั้งค่า AdMob รหัสหน่วยโฆษณา

ไปที่การสร้างรายได้ > การตั้งค่า > การจัดการ API และจดบันทึก ของคีย์การเข้าถึง API สถิติการสร้างรายได้

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

เปิดโหมดทดสอบ

สามารถเปิดใช้โหมดทดสอบได้จาก แดชบอร์ด Unity Ads ภายใต้แท็ก เลือกแท็บการทดสอบ

คุณบังคับใช้โหมดทดสอบสำหรับแอปได้โดยคลิกปุ่มแก้ไข ให้เลือกลบล้างโหมดการทดสอบไคลเอ็นต์ แล้วเลือก บังคับให้เปิดโหมดทดสอบ (ใช้โฆษณาทดสอบ) สำหรับอุปกรณ์ทั้งหมด

Android

iOS

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

กรอกแบบฟอร์มแล้วคลิกบันทึก

ขั้นตอนที่ 2: ตั้งค่าดีมานด์โฆษณา Unity ใน AdMob UI

กำหนดการตั้งค่าสื่อกลางสำหรับหน่วยโฆษณา

Android

ดูวิธีการได้ที่ขั้นตอนที่ 2 ในคู่มือสําหรับ Android

iOS

โปรดดูวิธีการในขั้นตอนที่ 2 ในคู่มือสำหรับ iOS

เพิ่ม Unity Ads ลงในรายชื่อพาร์ทเนอร์โฆษณาตาม GDPR และกฎระเบียบของรัฐในสหรัฐอเมริกา

ทำตามขั้นตอนใน การตั้งค่า GDPR และ การตั้งค่ากฎระเบียบของรัฐในสหรัฐอเมริกา เพื่อเพิ่ม Unity Ads ลงในรายชื่อพาร์ทเนอร์โฆษณาตามกฎระเบียบ GDPR และกฎระเบียบของรัฐในสหรัฐอเมริกาใน AdMob

ขั้นตอนที่ 3: นำเข้า SDK โฆษณา Unity และอะแดปเตอร์

การผสานรวมผ่าน pub.dev

เพิ่มการอ้างอิงต่อไปนี้ด้วยเวอร์ชันล่าสุดของ Unity Ads SDK และอะแดปเตอร์ในแพ็กเกจ ไฟล์ pubspec.yaml:

dependencies:
  gma_mediation_unity: ^1.0.0

การผสานรวมด้วยตนเอง

ดาวน์โหลดปลั๊กอินสื่อกลางโฆษณาในอุปกรณ์เคลื่อนที่ของ Google เวอร์ชันล่าสุดสำหรับ Unity Ads แยกไฟล์ที่ดาวน์โหลด และเพิ่มโฟลเดอร์ปลั๊กอินที่ดึงมา (และเนื้อหาภายใน) ลงในโปรเจ็กต์ Flutter ของคุณ จากนั้นให้อ้างอิงปลั๊กอินใน pubspec.yaml ด้วยการเพิ่มทรัพยากร Dependency ต่อไปนี้

dependencies:
  gma_mediation_unity:
    path: path/to/local/package

ขั้นตอนที่ 4: ใช้การตั้งค่าความเป็นส่วนตัวบน Unity Ads SDK

ภายใต้ความยินยอมของผู้ใช้ EU ของ Google คุณต้องตรวจสอบว่าได้มีการเปิดเผยข้อมูลบางอย่าง และ ความยินยอมที่ได้รับจาก ผู้ใช้ในเขตเศรษฐกิจยุโรป (EEA) เกี่ยวกับ การใช้ตัวระบุอุปกรณ์และข้อมูลส่วนตัว นโยบายนี้เป็นไปตาม ข้อกำหนดด้าน ePrivacy และการคุ้มครองข้อมูลทั่วไปของสหภาพยุโรป กฎระเบียบ (GDPR) เมื่อขอความยินยอม คุณต้องระบุเครือข่ายโฆษณาแต่ละเครือข่าย ในเชนสื่อกลางที่อาจรวบรวม ได้รับ หรือใช้ข้อมูลส่วนตัว และ ให้ข้อมูลเกี่ยวกับการใช้งานของแต่ละเครือข่าย ขณะนี้ Google ไม่สามารถ ส่งตัวเลือกความยินยอมของผู้ใช้ไปยังเครือข่ายดังกล่าวโดยอัตโนมัติ

ปลั๊กอินสื่อกลางโฆษณาบนอุปกรณ์เคลื่อนที่ของ Google สำหรับ Unity Ads ประกอบด้วย GmaMediationUnity.setGDPRConsent() โค้ดตัวอย่างต่อไปนี้แสดงวิธีส่งข้อมูลความยินยอมไปยัง SDK โฆษณา Unity หากคุณเลือกที่จะเรียกใช้วิธีนี้ ขอแนะนำให้ทำ ก่อนที่จะขอโฆษณาผ่าน SDK โฆษณาในอุปกรณ์เคลื่อนที่ของ Google

import 'package:gma_mediation_unity/gma_mediation_unity.dart';
// ...

GmaMediationUnity.setGDPRConsent(true);

ดู Unity Ads Privacy Consent และ Data API และ การปฏิบัติตาม GDPR สําหรับรายละเอียดเพิ่มเติมและค่าที่ระบุในแต่ละวิธีได้

กฎหมายคุ้มครองความเป็นส่วนตัวของรัฐในสหรัฐอเมริกา

สหรัฐอเมริกา กฎหมายคุ้มครองความเป็นส่วนตัวของรัฐ ต้องให้ผู้ใช้ได้รับ เพื่อเลือกไม่ใช้ "การลดราคา" ของ "ข้อมูลส่วนบุคคล" (ตามที่กฎหมายให้คำจำกัดความ ข้อกำหนดดังกล่าว) โดยการเลือกไม่ใช้ที่นำเสนอผ่านโฆษณาว่า "อย่าขายข้อมูลส่วนบุคคลของฉัน" ที่เห็นได้ชัด ข้อมูล" ลิงก์ในหน้า "การขาย" หน้าแรกของพรรคการเมือง สหรัฐอเมริกา สถานะความเป็นส่วนตัว คู่มือการปฏิบัติตามกฎหมายช่วยให้คุณ การประมวลผลข้อมูลแบบจำกัด สําหรับการแสดงโฆษณาของ Google แต่ Google ใช้การตั้งค่านี้กับโฆษณาแต่ละรายการไม่ได้ เครือข่ายในเชนสื่อกลาง (Mediation Chain) ดังนั้น คุณต้องระบุเครือข่ายโฆษณาแต่ละเครือข่าย ในเชนสื่อกลางที่สามารถเข้าร่วมการขาย และปฏิบัติตามคำแนะนำ จากเครือข่ายเหล่านั้นแต่ละเครือข่ายเพื่อ การปฏิบัติตามข้อกำหนด

ปลั๊กอินสื่อกลางโฆษณาบนอุปกรณ์เคลื่อนที่ของ Google สำหรับ Unity Ads ประกอบด้วย GmaMediationUnity.setCCPAConsent() โค้ดตัวอย่างต่อไปนี้แสดงวิธีส่งข้อมูลความยินยอมไปยัง SDK โฆษณา Unity หากคุณเลือกที่จะเรียกใช้วิธีนี้ ขอแนะนำให้ทำ ก่อนที่จะขอโฆษณาผ่าน SDK โฆษณาในอุปกรณ์เคลื่อนที่ของ Google

import 'package:gma_mediation_unity/gma_mediation_unity.dart';
// ...

GmaMediationUnity.setCCPAConsent(true);

ขั้นตอนที่ 5: เพิ่มโค้ดที่จําเป็น

Android

ไม่ต้องใช้โค้ดเพิ่มเติมสำหรับการผสานรวม Unity Ads สำหรับ Android

iOS

การผสานรวม SKAdNetwork

ติดตาม Unity Ads' เอกสารประกอบ เพื่อเพิ่มตัวระบุ SKAdNetwork ลงในไฟล์ Info.plist ของโปรเจ็กต์

ขั้นตอนที่ 6: ทดสอบการใช้งาน

เปิดใช้โฆษณาทดสอบ

อย่าลืม ลงทะเบียนอุปกรณ์ทดสอบ สำหรับ AdMob และเปิดใช้โหมดทดสอบใน Unity Ads UI

ยืนยันโฆษณาทดสอบ

ในการยืนยันว่าคุณได้รับโฆษณาทดสอบจาก Unity Ads ให้เปิดใช้ การทดสอบแหล่งที่มาของโฆษณาแหล่งเดียว ในเครื่องมือตรวจสอบโฆษณาโดยใช้ Unity Ads (Waterfall) แหล่งที่มาของโฆษณา

รหัสข้อผิดพลาด

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

Android

com.google.ads.mediation.unity.UnityAdapter
com.google.ads.mediation.unity.UnityMediationAdapter

iOS

GADMAdapterUnity
GADMediationAdapterUnity

ต่อไปนี้เป็นรหัสและข้อความประกอบที่อะแดปเตอร์ UnityAds ส่งเมื่อ โฆษณาไม่โหลด:

Android

รหัสข้อผิดพลาด เหตุผล
0-10 UnityAds SDK แสดงข้อผิดพลาด ดูรหัส เพื่อดูรายละเอียดเพิ่มเติม
101 พารามิเตอร์เซิร์ฟเวอร์ UnityAds ที่กำหนดค่าใน UI ของ AdMob ขาดหายไป/ไม่ถูกต้อง
102 UnityAds แสดงผลตำแหน่งที่มีสถานะ NO_FILL
103 UnityAds แสดงผลตำแหน่งที่มีสถานะ "ปิดใช้"
104 UnityAds พยายามแสดงโฆษณาที่มีบริบทเป็นค่าว่าง
105 บริบทที่ใช้ในการเริ่มต้น โหลด และ/หรือแสดงโฆษณาจาก Unity Ads ไม่ถือเป็นอินสแตนซ์กิจกรรม
106 UnityAds พยายามแสดงโฆษณาที่ไม่พร้อมแสดง
107 อุปกรณ์ไม่รองรับ UnityAds
108 UnityAds โหลดโฆษณาได้เพียง 1 รายการต่อตำแหน่งเท่านั้น
109 UnityAds ดำเนินการเสร็จสิ้นโดยมีสถานะ ERROR
200-204 ข้อผิดพลาดที่เฉพาะเจาะจงของแบนเนอร์ UnityAds ดูรหัส เพื่อดูรายละเอียดเพิ่มเติม

iOS

0-9 UnityAds SDK แสดงข้อผิดพลาด ดูเอกสารประกอบของ Unity เพื่อดูรายละเอียดเพิ่มเติม
101 พารามิเตอร์เซิร์ฟเวอร์ UnityAds ที่กำหนดค่าใน UI ของ AdMob ขาดหายไป/ไม่ถูกต้อง
102 UnityAds ไม่รองรับอุปกรณ์นี้
103 UnityAds นำเสนอเสร็จพร้อมสถานะข้อผิดพลาด kUnityAdsFinishStateError แล้ว
104 ออบเจ็กต์โฆษณา Unity เป็นค่าว่างหลังจากเรียกใช้เครื่องมือเริ่มต้น
105 แสดงโฆษณา Unity ไม่สำเร็จเนื่องจากโฆษณาไม่พร้อมใช้งาน
106 UnityAds ที่เรียกว่าตำแหน่งโฆษณาเปลี่ยน Callback ด้วยสถานะตำแหน่งโฆษณา kUnityAdsplacementStateNoFill
107 UnityAds ที่เรียกว่าตำแหน่งโฆษณาเปลี่ยน Callback ด้วยสถานะตำแหน่งโฆษณา kUnityAdsplacementStateDisabled
108 โหลดโฆษณาสำหรับตำแหน่งนี้แล้ว UnityAds SDK ไม่รองรับการโหลดโฆษณาหลายรายการสำหรับตำแหน่งเดียวกัน

บันทึกการเปลี่ยนแปลงอะแดปเตอร์สื่อกลาง Unity Ads Flutter

เวอร์ชัน 1.0.0

  • การเผยแพร่ครั้งแรก
  • ยืนยันความเข้ากันได้กับอะแดปเตอร์ Unity Android เวอร์ชัน 4.10.0.0
  • ยืนยันความเข้ากันได้กับอะแดปเตอร์ iOS Unity เวอร์ชัน 4.10.0.0