คําถามที่พบบ่อยเกี่ยวกับการรับรอง

หากมีคำถามที่ไม่พบในหน้านี้ โปรดติดต่อเราโดยใช้ข้อมูลติดต่อในหน้าติดต่อทีมสนับสนุน

หน้านี้อาจได้รับการอัปเดตด้วยคำถามที่พบบ่อยเมื่อได้รับคำถาม

ทั่วไป

ส่วนนี้ประกอบด้วยคำถามที่ไม่ได้จัดอยู่ในหมวดหมู่ที่เฉพาะเจาะจง

ฉันจะทดสอบเกมในสภาพแวดล้อมของ YouTube ได้ไหม

ได้ โดยใช้พอร์ทัลนักพัฒนาซอฟต์แวร์และทำตามวิธีการทดสอบ

ฉันควรทำอย่างไรหากเกมไม่แสดงผลใน Android หรือชุดโปรแกรมทดสอบ SDK

เมื่อเกมไม่แสดงผลเฉพาะใน Android หรือชุดโปรแกรมทดสอบ SDK มักเกิดจากวิธีโหลดเกมใน WebView เนื่องจากเหตุผลด้านประสิทธิภาพ ระบบจะโหลดเกมใน WebView ที่ไม่แสดงต่อผู้ใช้ในตอนแรก ส่งผลให้ขนาดวิวพอร์ต WebView เป็น 0 เราขอแนะนำให้ใช้โซลูชันต่อไปนี้เพื่อแก้ไขปัญหานี้

(1) ตรวจสอบว่าโค้ดเกมทำงานได้ไม่ว่าวิวพอร์ตจะมีขนาดเท่าใด

(2) ตรวจสอบว่าโค้ดเกมจัดการการปรับขนาดวิวพอร์ต และโค้ดเกมไม่รอหรือล้มเหลวเมื่อขนาดวิวพอร์ตเป็น 0

เราขอแนะนำให้ฟังเหตุการณ์ของหน้าต่าง resize และตั้งค่าความสูงของเกมเฉพาะเมื่อ window.innerHeight ไม่ใช่ 0

ข้อกำหนดทางเทคนิค

ส่วนนี้ประกอบด้วยคำถามที่เกี่ยวข้องกับข้อกำหนดทางเทคนิคของฟีเจอร์เล่นเกมของ YouTube

ฉันจะได้รับการยกเว้นสำหรับขีดจำกัดขนาดไฟล์แต่ละไฟล์ได้ไหม

ไม่ได้ ขนาดไฟล์แต่ละไฟล์เป็นขีดจำกัดที่แน่นอน

ระบบวัดขนาดแพ็กเกจเริ่มต้นอย่างไร

ขนาดแพ็กเกจเริ่มต้นจะวัดจากจำนวนไบต์ทั้งหมดที่ดาวน์โหลดโดย Playable จนกว่าจะมีการเรียกเหตุการณ์ gameReady

Playables จะใช้การบีบอัด HTTP เมื่อเป็นไปได้ ซึ่งหมายความว่าขนาดแพ็กเกจเริ่มต้นอาจเล็กกว่าขนาดดิบทั้งหมดของชิ้นงาน เมื่อทดสอบขนาดแพ็กเกจเริ่มต้นในชุดโปรแกรมทดสอบ SDK หากโฮสต์ในเครื่องไม่บีบอัดชิ้นงาน ขนาดอาจใหญ่กว่าขนาดที่จะเกิดขึ้นเมื่อเผยแพร่โฆษณาที่เล่นได้ หากต้องการดูขนาดแพ็กเกจเริ่มต้นจริงที่แสดงสำหรับโฆษณาที่เล่นได้ ให้ใช้ชุดโปรแกรมทดสอบ SDK ที่ชี้ไปยังไฟล์ index.html จากบิลด์ที่อัปโหลด หรือแก้ไขการตั้งค่าเซิร์ฟเวอร์ในเครื่องเพื่อเปิดใช้การบีบอัด gzip

ฉันใช้พื้นที่เกินขีดจำกัดขนาดไฟล์แต่ละไฟล์หรือขนาดแพ็กเกจรวมแล้ว ฉันควรทำอย่างไร

หากต้องการเพิ่มประสิทธิภาพเกมและปรับปรุงประสิทธิภาพ โปรดดูบทความต่อไปนี้

จะเกิดอะไรขึ้นหากฉันไม่สามารถจำกัดขนาดรวมของแพ็กเกจให้อยู่ภายในขีดจำกัดได้

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

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

ฉันจะยกเว้นการวิเคราะห์ภายในจากข้อกำหนดการเรียกใช้ API ภายนอกได้ไหม

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

เกมดึงข้อมูลและระดับจากฐานข้อมูลระยะไกล แบบนี้ยอมรับได้ไหม

ตอนนี้ยังไม่ได้ แต่เรากำลังนำร่องการเข้าถึงข้อมูลจากระยะไกลกับเกมบางเกมอยู่ ปัจจุบัน ข้อมูลเกมทั้งหมดต้องรวมอยู่ในแพ็กเกจเกม หากต้องการอัปเดตหรือรีเฟรชเนื้อหาหรือชิ้นงานเกม โปรดติดต่อเราโดยใช้ข้อมูลติดต่อในหน้าติดต่อทีมสนับสนุนเพื่อส่งแพ็กเกจเกมที่รีเฟรชแล้ว หรือติดต่อเพื่อสอบถามเพิ่มเติมหากต้องการรับการพิจารณาเข้าร่วมโปรแกรมนำร่องของเรา

ฉันเห็นข้อผิดพลาดเกี่ยวกับการละเมิด "นโยบายรักษาความปลอดภัยเนื้อหา" สำหรับการเรียกใช้สคริปต์ในบรรทัด

กรณีนี้จะเกิดขึ้นเมื่อคุณใช้ JavaScript เพื่อสร้างและเพิ่มแท็ก <script> ลงในหน้าเว็บ เพื่อความปลอดภัย YouTube ใช้นโยบายรักษาความปลอดภัยเนื้อหา (CSP) ที่กำหนดให้สคริปต์ต้องมีรหัสความปลอดภัยพิเศษที่เรียกว่า "Nonce" YouTube จะเพิ่มโค้ดนี้ลงในสคริปต์ในไฟล์ HTML โดยอัตโนมัติ แต่คุณต้องเพิ่มโค้ดนี้ลงในสคริปต์ที่สร้างด้วยโค้ดด้วยตนเอง

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

ตัวอย่าง

const script = document.createElement('script');
script.src = '...';
// Find the nonce from the main page and apply it
script.nonce = document.querySelector('script[nonce]')?.nonce;
document.head.appendChild(script);

คุณทดสอบการกำหนดค่าออฟไลน์ได้โดยใช้หลักเกณฑ์ที่ระบุไว้ในวิธีการใช้ชุดทดสอบ

การผสานรวม SDK

ส่วนนี้ประกอบด้วยคำถามที่เกี่ยวข้องกับ Playables SDK API

ฉันไม่ผ่านการรับรองเนื่องจากปัญหาการผสานรวมเสียง ฉันต้องแก้ไขอะไรบ้าง

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

ดูตัวอย่างการตั้งค่าเสียงได้ที่ตัวอย่าง

Unity

ส่วนนี้ประกอบด้วยคำถามเกี่ยวกับการผสานรวมเกม Unity ที่มีอยู่กับ SDK ของฟีเจอร์เล่นเกมของ YouTube ดูตัวอย่างวิธีใช้ SDK และ Unity Wrapper ได้ที่เอกสารประกอบเกี่ยวกับ ฟีเจอร์เล่นเกมของ YouTube Unity Wrapper

ฉันใช้การบีบอัดล่วงหน้าของ Unity ได้ไหม

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

บางเกมจะต้องใช้การบีบอัดล่วงหน้าสำหรับไฟล์ .wasm หรือ .data ของ Unity ใช้การบีบอัดล่วงหน้าในเงื่อนไขต่อไปนี้เท่านั้น เนื่องจากอาจทำให้เวลาในการโหลดช้าลงมาก

ข้อกำหนดเพิ่มเติมเหล่านี้เกิดจากข้อจำกัดของสถาปัตยกรรมการแสดงผล ขณะนี้เรายังไม่รองรับส่วนหัว HTTP เพิ่มเติมหรือการบีบอัด Brotli

ฉันจะจัดการการอัปเดตเฟรมเมื่อเกมทำงานอยู่เบื้องหลังได้อย่างไร

คุณใช้ setTimeout เพื่อจัดการการอัปเดตเฟรมเมื่อเกมทำงานอยู่เบื้องหลังได้ ซึ่งจะช่วยควบคุมลักษณะการทำงานต่างๆ เช่น การหยุดเสียงชั่วคราว คุณสามารถยืนยันการจัดการเฟรมในเบื้องหลังได้โดยเปิดใช้ตัวเลือก "เรียกใช้ในเบื้องหลัง" ในการตั้งค่าโปรแกรมเล่น

ข้อจำกัดด้านหน่วยความจำสำหรับเกม Unity

เกมบางเกมใน Unity จะใช้หน่วยความจำจำนวนมาก ซึ่งอาจทำให้เกินข้อจำกัดการใช้งานหน่วยความจำสำหรับโฆษณาที่เล่นได้ ขอแนะนำให้ทำตามเอกสารประกอบสำหรับนักพัฒนาซอฟต์แวร์สำหรับหน่วยความจำใน Unity WebGL