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

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

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

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

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

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

โปรดตรวจสอบสิ่งต่อไปนี้ก่อนดำเนินการต่อ

  • Google Mobile Ads SDK for React Native เวอร์ชันล่าสุด
  • เฟรมเวิร์ก React Native เวอร์ชัน 0.85.0 ขึ้นไป
  • วิธีติดตั้งใช้งานใน Android
    • Android API ระดับ 24 ขึ้นไป
  • วิธีติดตั้งใช้งานใน iOS
    • เป้าหมายการติดตั้งใช้งาน iOS เวอร์ชัน 13.0 ขึ้นไป
  • โปรเจ็กต์ React Native ที่ใช้งานได้ซึ่งกำหนดค่าด้วย Google Mobile Ads SDK for React Native ดูรายละเอียดได้ที่ตั้งค่า Google Mobile Ads SDK for React Native
    • ตรวจสอบว่าคุณได้ดาวน์โหลดและแตกโฟลเดอร์ adapters จากโฟลเดอร์ gma-sdk-react-native แล้ว หากไม่มีโฟลเดอร์ adapters ให้ทำตามขั้นตอนที่ 1, 2 และ 3 ในหัวข้อติดตั้ง Google Mobile Ads SDK for React Native
  • ตั้งค่าสื่อกลาง AdMob

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

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

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

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

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

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

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

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

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

การเสนอราคา

น้ำตก

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

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

สร้างหน่วยโฆษณาและตำแหน่งโฆษณา

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

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

Android

iOS

การเสนอราคา

เลือกการเสนอราคาสำหรับการตั้งค่า ในส่วนตำแหน่งโฆษณา ให้ป้อนชื่อตำแหน่งโฆษณา

จดบันทึกรหัสตำแหน่งโฆษณา

น้ำตก

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

จดบันทึกรหัสตำแหน่งโฆษณา

สุดท้าย ให้คลิกเพิ่มหน่วยโฆษณาเพื่อบันทึกหน่วยโฆษณาและตำแหน่งโฆษณา

ค้นหาคีย์ API การรายงานของ Unity Ads

การเสนอราคา

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

น้ำตก

ไปที่ Unity Ads Monetization > API management แล้วจดคีย์ API ใน Monetization Stats API Access

จากนั้นไปที่ Unity Ads Monetization > Organization Settings แล้วจดบันทึก Organization core ID

อัปเดต app-ads.txt

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

หากต้องการใช้ app-ads.txt สำหรับ Unity Ads โปรดดูการตั้งค่า app-ads.txt เป็นครั้งแรก

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

คุณเปิดใช้โหมดทดสอบได้จากแดชบอร์ด Unity Ads ไปที่การสร้างรายได้จาก Unity Ads > การทดสอบ

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

Android

iOS

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

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

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

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

Android

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

iOS

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

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

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

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

ในไดเรกทอรีรากของโปรเจ็กต์ ให้ติดตั้งอะแดปเตอร์สื่อกลาง Google Mobile Ads SDK for React Native สำหรับ Unity Ads ดำเนินการต่อไปนี้ให้เสร็จสมบูรณ์

  1. คัดลอกไฟล์ tar ของอะแดปเตอร์ Google Mobile Ads SDK for React Native จากไดเรกทอรี gma-sdk-react-native/adapters/unity/ ไปยังไดเรกทอรี local_packages/ ของโปรเจ็กต์ หากไม่มีโฟลเดอร์ adapters โปรดดูข้อกำหนดเบื้องต้น

    mkdir -p local_packages
    cp EXTRACT_DIR/gma-sdk-react-native/adapters/unity/gma-mediation-unity-0.1.0.tgz local_packages/
    

    แทนที่ EXTRACT_DIR ด้วยเส้นทางไปยังไดเรกทอรีที่คุณแตกไฟล์เก็บถาวร

  2. ติดตั้งแพ็กเกจอะแดปเตอร์โดยใช้เครื่องมือจัดการแพ็กเกจที่ต้องการ ดังนี้

    npm

    npm install ./local_packages/gma-mediation-unity-0.1.0.tgz
    

    ไหมพรม

    yarn add ./local_packages/gma-mediation-unity-0.1.0.tgz
    

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

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

อะแดปเตอร์ Unity Ads React Native เวอร์ชัน 0.1.0 ขึ้นไปรองรับการส่งสัญญาณความยินยอมตาม GDPR จากแพลตฟอร์มการจัดการความยินยอมที่ผสานรวมกับกรอบความโปร่งใสและความยินยอม (TCF) ของ IAB ไปยัง Unity Ads SDK ดูข้อมูลเพิ่มเติมได้ที่หัวข้อตั้งค่าการกำหนดค่าความยินยอมตาม TCF หรือไม่ใช่ TCF

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

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

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

import { UnityMediation } from '@google/gma-mediation-unity';
// ...

UnityMediation.setCCPAConsent(false);

ตั้งค่าการดูแลตามอายุ

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

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

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

Android

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

iOS

การผสานรวม SKAdNetwork

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

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

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

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

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

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

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

หากอะแดปเตอร์ไม่ได้รับโฆษณาจาก 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 พยายามแสดงโฆษณาที่มีบริบทเป็น Null
105 บริบทที่ใช้ในการเริ่มต้น โหลด และ/หรือแสดงโฆษณาจาก Unity Ads ไม่ใช่อินสแตนซ์กิจกรรม
106 UnityAds พยายามแสดงโฆษณาที่ยังไม่พร้อมแสดง
107 อุปกรณ์ไม่รองรับ UnityAds
108 UnityAds โหลดโฆษณาได้ครั้งละ 1 รายการต่อตำแหน่งเท่านั้น
109 UnityAds เสร็จสิ้นโดยมีสถานะข้อผิดพลาด
110 ขนาดโฆษณาที่ขอไม่ตรงกับขนาดแบนเนอร์ที่ UnityAds รองรับ
111 UnityAds แสดงข้อผิดพลาดในการเริ่มต้น
112 Unity Ads แสดงผลโทเค็นการเสนอราคาเป็นค่าว่างหรือไม่มีค่า
200-204 แบนเนอร์ UnityAds มีข้อผิดพลาดที่เฉพาะเจาะจง ดูรายละเอียดเพิ่มเติมได้ที่โค้ด

iOS

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

เวอร์ชัน 0.1.0

  • การเผยแพร่ครั้งแรก