サインインとサンドボックス エラーのトラブルシューティング

このトピックは、開発サンドボックスで発生している、ゲームの一般的なサインインとサンドボックスに関連するエラーのトラブルシューティングを PC で行うのに役立ちます。

ID が正しいことを確認する

MicrosoftGame.config で次の ID が正しいことを確認する必要があります。

  • StoreId
  • ID/名前
  • ID/発行元
  • TitleId
  • SCID
  • MSAAppId

StoreId、ID/名前、ID/発行元の値を見つけるには、次の操作を実行します。

  1. パートナー センターに移動します。
  2. ゲームを選択します。
  3. 左側のナビゲーション ウィンドウで、[ゲームのセットアップ] セクションを選択します。
  4. [ID の詳細] セクションに移動して [詳細の表示] リンクをクリックして、セクションを展開します。
  5. 次の値を確認します。
    1. パッケージ/ID/名前 - これは MicrosoftGame.config の ID/名前の値に対応します。
    2. パッケージ/ID/発行元 - これは MicrosoftGame.config の ID/発行元の値に対応します。
    3. Store ID - これは MicrosoftGame.config の StoreId の値に対応します。

TitleId、SCID、MSAAppId の値を見つけるには、次の操作を実行します。

  1. パートナー センターに移動します。
  2. ゲームを選択します。
  3. 左側のナビゲーション ウィンドウで、[Xbox サービス]>[Xbox の設定] セクションの順にクリックします。
  4. 次の値を確認します。
    1. タイトル ID (16 進数) - これは MicrosoftGame.config の TitleId の値に対応します。注: 使用するのは 16 進数の値です。10 進数の値ではありません
    2. MSA アプリ ID - これは、MicrosoftGame.config の MSAAppId 値に対応します。 MSAAppId は、GUID または 16 進数値のいずれかです。
    3. SCID - この値は MicrosoftGame.config ファイルで指定されていません。 代わりに、パラメーターとして XblInitialize メソッドに渡されます。

サンドボックスを切り替える

サンドボックスを切り替えるには、次の手順に従います。

  1. GDK コマンド プロンプトを開きます (スタート メニューに「GDK」と入力すると、[Microsoft GDK コマンド プロンプト] フォルダーが見つかります)。
  2. "XblPCSandbox.exe [sandbox ID]" と入力します。ここで、[sandbox ID] はサンドボックスの名前です (大文字と小文字が区別されます)。

トラブルシューティング手順

サインインが機能しないことには、多くの理由が考えられます。 そのため、さらに詳しく調査する前に根本原因を絞り込むことが重要です。

発生しているエラーの原因を絞り込むには、次の手順に従います。

  1. Xbox アプリにサインインして、サンドボックスの切り替え操作が正常に完了したことを確認します。 サインインできる場合は、サンドボックスが正常に切り替えられています。 そうでない場合は、正しいサンドボックスではない可能性があります。
    1. まだお持ちでない場合は、Xbox アプリをダウンロード します。
    2. まだお持ちでない場合は、サンドボックスへのアクセス権を持つ テスト アカウントを作成 します。
    3. サンドボックスを切り替える」セクションの手順に従って、サンドボックスを切り替えます。
    4. Xbox アプリを起動します。 スタート メニューに「Xbox」と入力すると、アイコンが表示されます。
    5. テスト アカウントを使用して Xbox アプリへのサインインを試します。
    6. サインインできない場合は、サンドボックスが適切に切り替えられなかったか、テスト アカウントにサンドボックスへのアクセス権がありません。 トラブルシューティングを行うには、以下の「一般的なエラー」セクションを確認して、発生しているエラーに関する情報を参照します。
    7. サインインできる場合は、サンドボックスの切り替えが完了し、テスト アカウントがサンドボックスへのアクセス権を持っていることを意味しています。 次の手順に進むことができます。
  2. 次に、サンプル プロジェクトのいずれかでサインインを試みます。
    1. Unity を使用している場合は、Unity プラグインからサインイン シーンを使用できます。 別のエンジンを使用している場合は、Social サンプルを使用できます。これは、セキュリティで保護されたダウンロード サイト aka.ms/gdkdl で入手できます。
    2. サンプルの MicrosoftGame.config で、ID をゲームの ID に置き換えます。 ID の取得方法の詳細については、「ID が正しいことを確認する」セクションを参照してください。
    3. サンドボックスを切り替えていない場合は、「サンドボックスを切り替える」 セクションの手順に従って、サンドボックスを切り替えます。
    4. サンプルをビルドして実行します。
    5. サンプルへのサインインを試みます。
    6. サンプルを使用してサインインできない場合は、パートナー センターまたは MicrosoftGame.config でゲームの Xbox サービス構成に問題がある可能性があります。その他のトラブルシューティングについては、次の「一般的なエラー」セクションを参照してください。
    7. サンプルにサインインできるものの、ゲームにはサインインできない場合は、問題の原因がゲームとサンプルで異なる可能性があります。 まずは、MicrosoftGame.config ファイルで相違点を探します。 サンプルのサインイン コードとゲームのコードで、ロジックの相違点を探すこともできます。

一般的なエラー

ユーザーがサンドボックスにいない (0x8015DC12)

このエラーは、テスト アカウントにサンドボックスへのアクセス権がないか、ゲームにサンドボックスへのアクセス権がないことを意味します。 このエラーの一般的な原因の一覧を次に示します。

  • このエラーの最も一般的な原因は、ID の不一致です。 このエラーのトラブルシューティングを行うには、以下の「ID が正しくない」セクションを参照してください。
  • 可能性は低いものの、アカウントにサンドボックスへのアクセス権がない可能性もあります。 テスト アカウントを作成すると、新しいテスト アカウント フォームの下部でアカウント アクセスを割り当てることができます。
  • もう 1 つの可能性は、分離されたサンドボックスを使用していることです。 詳細については、「共有サンドボックスではなく、分離サンドボックスである」セクションを参照してください。

ID が正しくない

サインイン エラーの一般的な原因は、MicrosoftGame.config の一部の値が正しくないことです。 入力ミスによるエラーを最小限に抑えるため、MicrosoftGame.Config エディターのストアの関連付けウィザードを使用することをお勧めします。 「ID が正しいことを確認する」セクションの指示に従って、パートナー センターとマニフェストの ID を手動で再確認することもできます。

PC にサインインできないが、PC プラットフォームを [Xbox の設定] ページに追加していない (0x87dd0005、AM_E_XAST_UNEXPECTED)

0x87dd0005 (AM_E_XAST_UNEXPECTED) というエラー メッセージが表示される場合、多くの場合、PC プラットフォームが [Xbox 設定] ページに追加されていないことを意味します。 これを解決するには、次の手順を実行します。

  1. パートナー センターに移動します。
  2. ゲームに移動します。
  3. 左側のウィンドウで、[Xbox サービス] を展開して、[Xbox の設定] を選択します。
  4. [Windows 10 PC] チェックボックスがオンになっていることを確認します。
  5. [Save] をクリックします。
  6. [ゲームプレイ設定] ページで、Xbox サービス設定を開発サンドボックスに公開します。
  7. 30 分待ってから、もう一度サインインを試みます。

重要:[Xbox の設定] ページで [保存] をクリックした後、Xbox 設定が開発サンドボックスに公開されていることを確認してください。 [保存] をクリックしても、変更は公開されません。 Xbox サービスがゲームを認識し、サインインして作業できるようにするには、これらの設定を Xbox サービスに公開する必要があります。

サンドボックス ID のスペルミス

サンドボックスの値では大文字と小文字が区別されます。 例: “RETAIL” は “Retail” または “retail” と同じではありません。 まれではありますが、これは発生する可能性があります。 もう 1 つのケースとして、文字が欠落しているためにサンドボックスが間違っている場合があります。 最後のケースは、複数のサンドボックスがあり、ゲームの公開先とは異なるサンドボックスに切り替えた場合です。

SCID が正しくない

Xbox サービスを呼び出すときに、正しいサービス構成 ID (SCID) を送信することが重要です。 SCID は XblInitialize メソッドに渡されます。 値が正しいことを確認します。

共有サンドボックスではなく、分離サンドボックスである

分離サンドボックスを使用する理由がない限り、共有サンドボックスを使用することをお勧めします。 開発サンドボックスの種類は、パートナー センターで確認できます。

サンドボックスを切り替えた後に Microsoft Store でゲームまたはアドオンが見つからない

サンドボックスを切り替えた後に Microsoft Store でゲームまたはアドオンが見つからない場合は、次の手順を実行します。

パートナー センターで入手可能性の設定を確認します。

  1. パートナー センターで、ゲームまたはアドインをサンドボックスに公開したとします。
  2. 入手可能性が [この製品を Microsoft ストアで利用可能にして検出可能にします] に設定されていることを確認します。 注: 他の検出可能性の設定も使用できます。これらの設定は、意図的に設定されていることを確認してください。
  3. 利用可能日が設定されている場合は、未来の日付ではないことを確認してください。 その場合、ゲームまたはアドインは Microsoft Store に表示されません。

Xbox アプリを使用して次の操作を実行します。

  1. XblPCSandbox.exe ツールを使用して、サンドボックスを切り替えます。
  2. Xbox アプリを再起動します。
  3. テスト アカウントを使用して Xbox アプリにサインインします。
  4. コマンド プロンプトを開きます。
  5. 次のコマンドを実行します: msxbox://game/?productId=<store ID>

検索を使用してゲームまたはアドインを見つけようとしている場合は、ゲームの正確な名前を入力しなければ見つかりません。 たとえば、ゲームの名前が "TestGame1" であり、検索ボックスに「TestGame」と入力すると、ゲームが見つからないというメッセージが Microsoft Store に表示されます。 注: これは、リテールの場合とは異なります。リテールの場合は、「TestGa」と入力しても文字列の部分一致によってゲームを見つけることができます。

PC の再起動を試す

PC が、サインインが機能するために必要なサービスのいずれかが不良状態になる状態になる場合があります。 再起動によって問題が解決することがあります。

ゲーム サービスが最新であることを確認する

ゲーム サービスは定期的に修正されているため、お使いのゲーム サービスが最新であることを確認しておくことをお勧めします。 注: これらのサービスは自動的にも更新されますが、古いバージョンを使用していることがあります。 設定の [プログラムの追加と削除] で、バージョン情報とゲーム サービスが最後に更新された日時を確認できます。 更新を強制的に実行するには、次の操作を実行します。

  1. 管理者として PowerShell を実行して、"get-appxpackage Microsoft.GamingServices | remove-AppxPackage -allusers" と入力します
  2. 同じ PowerShell ウィンドウで、「start ms-windows-store://pdp/?productid=9MWPM2CQNLHN」と入力します。
  3. そのページでアプリをインストールします。UAC プロンプトが表示されたら、承諾します。
  4. ゲームをもう一度インストールしてみます。

Xbox アプリが最新であることを確認する

PC が開発サンドボックスに長時間残っている場合は、Xbox アプリが最新ではない可能性があります。 Xbox アプリは常に更新されています。 更新するには、リテールに切り替えます。 自動的に更新するはずです。 設定の [プログラムの追加と削除] で、バージョン情報とゲーム サービスが最後に更新された日時を確認できます。 最新でない場合は、次の操作を実行できます。

  1. リテール サンドボックスにいることを確認してください。そうでない場合、Microsoft Store で Xbox アプリを見つけることはできません。
  2. 管理者として PowerShell を実行して、"get-appxpackage Microsoft.XboxApp | remove-AppxPackage -allusers" と入力します
  3. 同じ PowerShell ウィンドウで、「start ms-windows-store://pdp/?productid=9mv0b5hzvk9z」と入力します。
  4. そのページでアプリをインストールします。UAC プロンプトが表示されたら、承諾します。

Xbox アプリが見つからない

Xbox アプリが Microsoft Store で利用できる場合でも、リテール サンドボックスにいる必要があります。そうでない場合、 Microsoft Store には表示されません。 リテール サンドボックスにいることを確認して、 Microsoft Store で "Xbox アプリ" を検索します。

0x89245106 (E_GAMEUSER_NO_DEFAULT_USER)

これは、現在、既定のユーザーが存在しないことを意味します。 このエラーが発生した場合、XUserAddAsync(AddDefaultUsersSilently、...) を呼び出した可能性が高いと思われます。この問題を解決するには、XUserAddAsync をもう一度、今回は AddDefaultUserSilently なしで呼び出し、ユーザーを取得する必要があります。 必要に応じて、XUserAddOptions options = XUserAddOptions::AddDefaultUserAllowingUI オプションを使用して UI を表示して、表示されない場合は暗黙的にサインインできます。

デバイス ポータル: サンドボックスの切り替えが機能しない

サンドボックスを切り替えるときに Windows デバイス ポータルでエラーが発生する場合は、代わりに xblpcsandbox.exe を使用します。 Windows デバイス ポータルを使用してサンドボックスを切り替えることは推奨されません。 手順については、「サンドボックスを切り替える」セクションを参照してください。

Xbox サービスがダウンしています

問題がまだ解決されず、エラーがこのドキュメントで説明されていない場合は、Xbox サービスが一時的に停止していないどうかを確認できます。 これは、[Xbox の状態] ページで確認できます。

Xbox サービスが有効になっていません

サインインできない場合は、ゲームで Xbox サービスが有効になっていることを確認してください。 ゲームで Xbox サービスが有効になっているかどうかは、次の方法で確認できます:

  1. パートナー センターに移動して、ゲームをクリックします。
  2. サイド ナビゲーションで、[Xbox サービス]>[Xbox 設定] を探します。
  3. 左側のナビゲーションに Xbox サービスと表示されない場合、ゲームは Xbox サービスに対応していません。
  4. ゲームでコンセプトの承認が必要な場合は、Microsoft の担当者と協力して、ゲームの Xbox サービスを有効にしてください。

関連項目

[サンドボックスの概要][高度なサンドボックスの概念の概要] [テスト アカウント] [Xbox サービスの構成の概要]
MicrosoftGame.config の概要