本文內容
預檢檢查清單
在調查特定錯誤之前,請先完成此檢查清單。大多數登入問題都是由於其中某個項目設定錯誤所造成的。在繼續進行下方的診斷流程圖和錯誤章節之前,請先確認下列所有項目。事先安裝 XblPCSandbox.exe 工具至關重要。
如需如何取得此工具的詳細資訊,請參閱沙箱概觀
環境檢查
這些項目會影響您登入 XBOX 服務 (包括 XBOX 應用程式) 的能力。請先檢查這些項目。✅ 1. 檢閱沙箱識別碼沒有任何錯字
請確定沙箱識別碼的輸入正確。 如何檢查:✅ 2. 您的沙箱正確
您的 PC 必須位於遊戲 XBOX 服務設定已發佈至的同一個開發沙箱中。 如何檢查:✅ 3. 您的測試帳戶有效
測試帳戶可能會因為多種原因而失效。請確認下列所有項目:帳戶對沙箱的存取權未到期
測試帳戶對沙箱的存取權有到期日。沙箱存取權已到期的帳戶無法登入沙箱。 如何檢查:- 前往 Partner Center。
- 選取 Apps and Games
- 選取 XBOX Test accounts (或前往測試帳戶管理)。
- 找到您的測試帳戶,並檢查 Access Expires 和 Status 欄。
帳戶具有您沙箱的存取權
建立測試帳戶時,您必須授與其特定沙箱的存取權。 如何檢查:- 在 Partner Center 中,前往 XBOX services > Test accounts。
- 選取您的測試帳戶。
- 確認您的開發沙箱已列在帳戶的沙箱存取權下。
認證正確
請確定您使用的是測試帳戶正確的電子郵件地址和密碼。測試帳戶電子郵件地址通常以@xboxtest.com 結尾。
✅ 4. XBOX 遊戲元件是最新版本
XBOX 服務依賴您 PC 上的 XBOX 應用程式和 Gaming Services 元件。這兩者中任一個的版本過舊,都可能導致非預期的登入失敗。 如何檢查:- 請依照 Game Repair Tool 提供的資訊操作
✅ 5. 重新啟動您的 PC
有時登入所需的背景服務 (例如 XBOX Live Auth Manager 或 Gaming Services) 會進入不良狀態。重新啟動 PC 可以解決上述步驟無法察覺的暫時性問題。 在這麼做之前,請務必透過意見反應中樞提交錯誤,以便在未來的版本中追蹤和解決。 您可以使用下列命令來執行此動作:專案檢查
這些項目會特別影響從您的遊戲登入。如果您可以登入 XBOX 應用程式,但無法從遊戲登入,請從這裡開始。✅ 6. 您的識別碼與 Partner Center 相符
您MicrosoftGame.config 中的識別碼必須與 Partner Center 中的值完全相符。只要有一個值不符,就會導致無法登入。
如何檢查:
開啟您的 MicrosoftGame.config,並將這些值與 Partner Center 進行比較:
此外,請檢查 SCID (服務設定識別碼)。SCID 不在您的
MicrosoftGame.config 中,而是作為參數傳遞給 XblInitialize 方法。您可以在 Partner Center 的 XBOX services > XBOX Settings 下找到它。
✅ 7. XBOX 服務設定已發佈至您的沙箱
即使在 Partner Center 中儲存了變更,在您將其發佈至開發沙箱之前,這些變更都不會生效。 如何檢查:- 前往 Partner Center。
- 選取您的產品。
- 瀏覽至 XBOX services > Gameplay settings。
- 選取您開發沙箱的索引標籤。
- 檢查發佈狀態。
✅ 8. 已啟用 PC 平台
如果您在 PC 上進行開發,就必須為您的遊戲啟用 Windows 10 PC (及更新版本) 平台。如果沒有啟用,登入會失敗並出現錯誤0x87dd0005 (AM_E_XAST_UNEXPECTED)。
如何檢查:
- 前往 Partner Center。
- 選取您的產品。
- 瀏覽至 XBOX services > XBOX Settings。
- 確認已核取 Windows 10 PC 核取方塊。對於最新的 Windows 版本也請執行此動作。
- 核取 Windows 10 PC 核取方塊。
- 選取 Save。
- 前往 Gameplay settings,並將您的設定發佈至您的開發沙箱。
- 等待大約 30 分鐘再進行測試。
診斷流程圖
如果預檢檢查清單沒有解決您的問題,請使用此逐步程序來縮小根本原因的範圍。從步驟 1 開始,並依照分支進行。帳戶和沙箱錯誤
如果您無法登入 XBOX 應用程式 (診斷流程圖的步驟 1),問題出在您的沙箱切換、測試帳戶或 XBOX 應用程式本身。使用者不在此沙箱中 (0x8015DC12)
測試帳戶沒有沙箱的存取權,或遊戲的設定與沙箱不符。 常見原因和修正方式:沙箱識別碼不正確
常見的錯誤包括:- 缺少或多出字元:
XDKS1而非XDKS.1 - 錯誤的沙箱:切換到與遊戲設定發佈位置不同的沙箱
- 執行
XblPCSandbox /get,並將輸出與 Partner Center 進行比較。 - 使用 Partner Center 中的確切值重新執行
XblPCSandbox <correct sandbox ID>。
測試帳戶的沙箱錯誤 (Garrison 錯誤)
如果您看到錯誤訊息建議您的帳戶應在不同的沙箱中使用,或 XBOX 身分識別服務在登入期間傳回非預期的錯誤,您可能登入了該測試帳戶錯誤的沙箱。 如何修正:- 執行
XblPCSandbox /get以確認您的 PC 設定為哪個沙箱。 - 在 Partner Center 中,前往 XBOX services > Test accounts,並確認您的測試帳戶具有該沙箱的存取權。
- 如果沙箱不相符,請切換至正確的沙箱:
XblPCSandbox <correct sandbox ID>
XBOX 應用程式授權錯誤 (0x803F8001)
如果您先前未曾在 RETAIL 中開啟 XBOX 應用程式,它可能會無法啟動。 如何修正:- 切換至 RETAIL:
XblPCSandbox /retail(或XblPCSandbox RETAIL) - 開啟 XBOX 應用程式,並讓它完全啟動。
- 切換回您的開發沙箱:
XblPCSandbox <your sandbox ID>
找不到 XBOX 應用程式
XBOX 應用程式可在 Microsoft Store 中取得,但只有在您位於 RETAIL 沙箱時才能取得。如果您找不到它:- 切換至 RETAIL:
XblPCSandbox /retail(或XblPCSandbox RETAIL) - 在 Microsoft Store 中搜尋 “XBOX” 並安裝。
- 切換回您的沙箱。
設定錯誤
如果您可以登入 XBOX 應用程式,但無法在遊戲或範例專案中登入 (診斷流程圖的步驟 2),問題出在您遊戲的 XBOX 服務設定。未啟用 PC 平台 (0x87dd0005, AM_E_XAST_UNEXPECTED)
此錯誤表示未在 Partner Center 中新增 Windows 10 PC 平台。也請檢查更新的版本。 如何修正:- 在 Partner Center 中,瀏覽至您的產品 > XBOX services > XBOX Settings。
- 核取 Windows 10 PC 核取方塊。
- 選取 Save。
- 前往 Gameplay settings,並將您的設定發佈至您的開發沙箱。
- 等待 30 分鐘,然後再次嘗試登入。
XBOX 服務設定未發佈
在 Partner Center 中儲存的變更,在發佈至您的開發沙箱之前不會生效。 如何修正:- 在 Partner Center 中前往 XBOX services > Gameplay settings。
- 選取您的開發沙箱索引標籤。
- 選取 Publish。
- 等待大約 30 分鐘讓變更傳播。
MicrosoftGame.config 中的識別碼不正確
登入錯誤的常見原因是MicrosoftGame.config 中有一或多個值不相符。
如何修正:
使用 MicrosoftGame.config 編輯器中的市集關聯精靈來連結您的遊戲並自動填入正確的值。或者,使用檢查清單項目 1 根據 Partner Center 手動確認每個值。
XblInitialize 中的 SCID 不正確
SCID 不在MicrosoftGame.config 中,而是作為參數傳遞給 XblInitialize。請確定您傳遞的是 Partner Center 中正確的 SCID (XBOX services > XBOX Settings)。
隔離與共用沙箱
除非您有使用隔離沙箱的特定原因,否則請使用共用沙箱。您可以在 Partner Center 中檢查您的沙箱類型。隔離沙箱有額外的限制,可能會導致登入失敗。遊戲特定的疑難排解
如果 XBOX 應用程式登入正常運作,而且範例專案可以使用您遊戲的識別碼運作,但您的遊戲仍然無法登入 (診斷流程圖的步驟 3),問題是您遊戲的程式碼或設定所特有的。比較 MicrosoftGame.config 檔案
將您遊戲的MicrosoftGame.config 與可運作的範例進行差異比較。尋找多出或缺少的欄位、格式差異或不正確的值。
比較登入程式碼
將您遊戲的登入實作與範例的程式碼進行比較。尋找呼叫XUserAddAsync 的方式 (選項、回呼、錯誤處理) 之間的差異。
沒有預設使用者 (0x89245106, E_GAMEUSER_NO_DEFAULT_USER)
此錯誤表示目前沒有已登入的預設使用者。 **原因:**您使用AddDefaultUserSilently 選項呼叫了 XUserAddAsync,但目前沒有已登入的使用者。
如何修正:
如需詳細資訊,請參閱 XUserAddAsync 和 AdvancedUserModel。
其他疑難排解
XBOX 服務發生中斷
如果您已用盡所有其他選項,請檢查 XBOX 服務是否發生中斷:[!IMPORTANT] **已知限制 (GDK 26.04):**透過 SSH 工作階段執行時,XblPCSandbox無法切換 沙箱。請改為從本機工作階段執行XblPCSandbox。
錯誤碼快速參考
如果您看到此處未列出的錯誤碼,請透過意見反應中樞提交問題。使用 xblPcSandbox /feedback 提交錯誤或者,如果直接從意見反應中樞提交,請選擇 Category: Gaming and XBOX 和 Area: Developer Tools
