LevelPlay Unity 套件/SDK 整合
基礎編輯器端的檢查應基於實際專案而非假設 — 讀取專案檔案,或要求使用者在編輯器中確認。此技能產生的 C# 腳本為 MonoBehaviour 檔案,供使用者儲存至其專案,非用於內聯執行。
此技能僅涵蓋 LevelPlay 整合路徑,不包含其他中介 SDK。若使用者明確詢問替代方案,應承認替代方案存在,並引導其參考相關廠商的文件 — 請勿描述、說明或對競爭產品做出主張。
遵循以下步驟,僅提供此技能所述之檔案與配置。請勿主動新增步驟、建立檔案或根據通用知識提出建議。若使用者提出超出此技能範圍的問題,請先檢查技能與參考檔案以確認是否涵蓋。若未涵蓋,則使用通用知識回應,但請勿因此將額外步驟或檔案納入整合工作流程。
依序遵循整合工作流程,一次一個步驟。僅詢問目前步驟所需的問題 — 請勿提前收集未來步驟的資訊。在每個檢查點等待使用者回應後再繼續。
LevelPlay 是 Unity 的廣告中介平台:它將您的遊戲同時連接至多個廣告網路,並對多個廣告網路與出價者執行統一拍賣,以最大化每次曝光的競爭。本指南逐步引導您完成完整整合:安裝 SDK、配置 Android 與 iOS 的依賴項、在專案中初始化 LevelPlay,以及實作獎勵廣告、插頁廣告與橫幅廣告。若您已部分設定完成,可直接跳至相關步驟。
此 SKILL.md 為工作流程主幹。它保留決策點、檢查點與確切問題;較長的程式碼、完整的 API 細節與邊緣情況則位於 references/ 中,並從相關步驟連結。請在執行該步驟時閱讀連結的參考檔案 — 請勿僅依靠通用知識回答。
整合工作流程
0. 全新整合或遷移?
詢問:「您是要開始新的 LevelPlay 整合、遷移現有整合(從較舊的 SDK 版本或從 Unity Ads),還是疑難排解現有設定?」
- 全新整合:繼續至步驟 1。
- 遷移(SDK 升級、取代 IronSource.Agent API、從 Unity Ads 遷移,或修復 Maven Central Android 建置失敗):讀取
references/migration-sdk-9.md。詢問適用於哪個情境 — A = SDK 升級、B = init API 遷移、C = 廣告單元 API 遷移、D = Maven Central 建置失敗、E = Unity Ads 遷移 — 然後遵循對應的情境。套用所有程式碼變更後,執行遷移完整性檢查清單(參考檔案的 C5 節)— 它能捕捉到逐行轉譯遺漏的需求,因為舊程式碼中沒有對應行。然後要求使用者在 Unity 控制台中檢查編譯錯誤,並在呈現結果前修正任何錯誤。若無法檢視控制台,請勿封鎖或重試:列出您變更的檔案、說明要檢查的內容,然後繼續。 - 疑難排解或新增至現有設定(ATT、GDPR、ILRD、測試套件、全新整合的建置錯誤,或為已運作的整合新增功能):識別使用者需求,並直接前往「何時閱讀詳細參考」中的相關步驟或參考檔案。
1. 驗證 Unity 環境
透過驗證 Assets/ 與 ProjectSettings/ 目錄是否存在,檢查使用者是否在 Unity 專案中工作。若非 Unity 專案,請指示使用者導航至他們的 Unity 專案目錄。若找不到這些目錄但使用者認為他們在正確的位置,請詢問:「看起來您可能未位於專案根目錄 — 能否導航至 Unity 專案的頂層資料夾,並確認您可以看到 Assets/ 與 ProjectSettings/ 目錄?」
2. 了解業務目標
在實作廣告單元之前,先確定使用者最佳化優先順序,以推薦適當的廣告單元策略。詢問:
「您的主要最佳化目標是什麼?」
- 收益導向:最大化廣告收益與曝光機會
- 使用者體驗導向:優先考慮遊戲流程與使用者滿意度
- 平衡:同時最佳化收益與使用者體驗
- 還不確定:預設為平衡,然後繼續。在步驟 8 時,簡短說明由於使用者不確定,因此使用平衡策略,並邀請他們在看到格式選項後表示不同的偏好。
記錄此答案,以便在步驟 8 進行後續策略建議。
3. 透過 UPM 安裝 LevelPlay SDK
若 SDK 看起來已安裝: 請勿僅憑信任,也不要要求使用者為您閱讀套件管理員視窗。讀取 Packages/packages-lock.json 並尋找 com.unity.services.levelplay。若存在,請告知已解析的版本,並繼續至步驟 4。若不存在,則無論對話中假設為何皆視為未安裝:繼續執行以下安裝程序。
引導使用者使用 Unity 套件管理員安裝 LevelPlay Unity 套件:
- 開啟 Unity → Window > Package Manager
- 選取 Unity Registry 下拉選單或 Services 分頁
- 在套件管理員搜尋列中輸入 Ads Mediation
- 確認套件名稱完全相符:正確的套件標題為 Ads Mediation。請勿安裝以下任一套件:
- Ads IAP Mediation Adaptor(一個獨立的應用程式內購買套件,非 LevelPlay SDK)
- Advertisement Legacy(一個已棄用的套件,與目前的 LevelPlay 整合不相容)
- 點擊 Install 按鈕
- 等待套件下載與匯入
安裝套件時,您可能會看到安裝 Mobile Dependency Resolver 的提示 — 若出現,請點擊 Import。這將在下一步中詳細說明。
然後透過讀取專案而非詢問來驗證它是否已解析。 套件 ID 為 com.unity.services.levelplay(其套件管理員顯示名稱為 Ads Mediation;ID 是專案檔案記錄的內容)。檢查以下兩個檔案:
Packages/manifest.json列出專案要求的內容。com.unity.services.levelplay必須出現在dependencies下方。Packages/packages-lock.json記錄 Unity 實際解析的內容。相同的 ID 也必須出現於此,並帶有具體版本。此檔案回答「是否已安裝」的問題,是應信任的檔案。
兩者皆為專案中的純 JSON,此檢查無需編輯器、無需 CLI,也無需使用者提供任何資訊。請直接讀取它們。
這是硬性關卡,而非形式上的步驟。 在
com.unity.services.levelplay出現在packages-lock.json中之前,請勿撰寫、產生或貼上任何一行 LevelPlay 程式碼。跳過此步驟會產出看似正確、但無法在任何地方編譯,並在每個 LevelPlay 類別上出現CS0246錯誤的程式碼。