如果找不到您想問的問題,請前往支援聯絡頁面,使用頁面上的聯絡資訊與我們聯絡。
我們會根據收到的問題更新這個頁面。
一般
這個部分包含不屬於特定類別的問題。
可以在 YouTube 環境中測試遊戲嗎?
可以,請使用開發人員入口網站,並按照測試說明操作。
我的遊戲無法在 Android 或 SDK 測試套件上算繪,該怎麼辦?
如果遊戲並非專門在 Android 或 SDK 測試套件上算繪,通常是因為遊戲在 WebView 中的載入方式所致。基於效能考量,遊戲一開始會載入未向使用者顯示的 WebView,導致 WebView 可視區域大小為零。如要解決這個問題,建議採取下列做法:
(1) 確認遊戲程式碼是否會執行,不受可視區域大小影響。
(2) 確認遊戲程式碼會處理可視區域大小調整作業,且可視區域大小為零時,遊戲程式碼不會等待或失敗。
建議您監聽視窗事件 resize,並僅在 window.innerHeight 不為零時設定遊戲高度。
技術相關規定
本節包含 YouTube 遊戲角落技術相關問題。
我可以獲得個別檔案大小限制的豁免嗎?
否。個別檔案大小有硬性限制。
初始套件大小的計算方式
初始套件大小的計算方式為:在呼叫 gameReady 事件前,可玩式廣告下載的位元組總數。
可玩式廣告會盡可能使用 HTTP 壓縮,因此初始套件大小可能小於素材資源的原始總大小。在 SDK 測試套件中測試初始套件大小時,如果本機主機未壓縮資產,則大小可能會大於可玩式廣告發布後的大小。如要查看可玩式廣告的實際初始套件大小,請使用指向已上傳建構版本中 index.html 檔案的 SDK 測試套件,或修改本機伺服器設定來啟用 gzip 壓縮。
我已達到或超過個別檔案或組合總大小限制,該怎麼辦?
如要最佳化遊戲並提升效能,請參閱下列文章:
如果無法符合總套件大小限制,該怎麼辦?
使用者每次玩遊戲時,可能都必須下載遊戲中的素材資源。 為避免載入時間過長和耗用大量數據用量,建議遊戲的套件總大小盡可能縮小。
建議遊戲在每個遊戲工作階段中,隨著使用者進度採用延遲載入或其他類型的資產增量載入,或按等級劃分資產,讓資產在長時間工作階段中分批下載。在這種情況下,總套件大小較大可能不會降低使用者體驗,甚至可能透過降低每位使用者的足跡,在遊戲中啟用更多內容,進而提升使用者體驗。如果您認為遊戲的運作方式確實需要較大的套件總大小,請透過支援聯絡頁面與我們聯絡,討論您的用途。
內部分析資料是否可排除在外部通話需求之外?
不可以。目前可玩廣告不得進行任何外部呼叫。請告知合作夥伴經理您感興趣的數據分析類型,以便優先開發這方面的功能。
遊戲會從遠端資料庫擷取資料和關卡,這樣可以嗎?
目前無法,但我們正在測試特定影視內容的遠端資料存取功能。目前所有遊戲資料都必須納入遊戲套件。如要更新或重新整理遊戲資產或內容,請使用支援聯絡頁面上的聯絡資訊,提交重新整理的遊戲套件,或進一步洽詢是否能加入我們的先導計畫。
我看到執行內嵌指令碼時違反「內容安全政策」的錯誤訊息
如果您使用 JavaScript 在網頁中建立及新增 <script> 標記,就會發生這種情況。為確保安全,YouTube 使用內容安全政策 (CSP),規定指令碼必須具備稱為「隨機數」的特殊安全碼。YouTube 會自動將這段程式碼加到 HTML 檔案的指令碼中,但如果是您使用程式碼建立的指令碼,則必須手動加入。
使用 JavaScript 以程式輔助方式產生指令碼標記時,您需要從網頁找出隨機碼,並套用至新的指令碼元素。
範例:
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 遊戲與 YouTube 遊戲角落 SDK 整合的相關問題。如要查看如何使用 SDK 和 Unity Wrapper 的範例,請參閱 YouTube 遊戲角落 Unity Wrapper 說明文件。
可以使用 Unity 預先壓縮功能嗎?
我們不建議預先壓縮素材資源。初始套件大小規定會使用壓縮後的大小,上傳的檔案會在擷取後套用壓縮。如果仍需預先壓縮檔案,請參閱本節其餘內容,或前往支援聯絡頁面與支援團隊聯絡,討論最適合您遊戲的選項。
部分遊戲需要使用 Unity 的 .wasm 或 .data 檔案預先壓縮功能。
只有在下列情況下才使用預先壓縮,否則可能會導致載入時間大幅延長:
- 如需使用 Unity 預先壓縮功能,以符合個別檔案大小或套件總大小規定,請參閱「我已達到或超過個別檔案或套件總大小限制,該怎麼辦?」一文。
- 如要使用 Unity 預先壓縮功能,確保遊戲通過認證,請務必符合下列規定:
- 您「必須」使用 zip 預先壓縮。
- 您「必須」在載入器指令碼中手動解壓縮檔案。建議使用 Compression Streams API。
這些額外規定源自放送架構的限制。 目前不支援其他 HTTP 標頭或 Brotli 壓縮。
遊戲在背景執行時,如何管理影格更新?
遊戲在背景執行時,您可以使用 setTimeout 管理影格更新。
這有助於控制音訊暫停等行為。如要驗證背景影格管理功能,請在播放器設定中啟用「在背景執行」選項。
Unity 遊戲的記憶體限制
Unity 中的某些遊戲會使用大量記憶體,導致超出可玩式廣告的記憶體用量限制。建議您參閱 Unity WebGL 中的記憶體開發說明文件。