Arm UWP アプリのトラブルシューティング
Arm32 または Arm64 UWP アプリが Arm で正しく動作しない場合は、役に立つガイダンスを次に示します。
Note
Arm64 プラットフォームをネイティブにターゲットとする UWP アプリケーションをビルドするには、Visual Studio 2017 バージョン 15.9 以降または Visual Studio 2019 が必要です。 詳細は、こちらの ブログ記事 を参照してください。
一般的な問題
Arm32 アプリと Arm64 アプリのトラブルシューティングを行うときに注意すべき一般的な問題を次に示します。
Arm ベースのプロセッサでの Windows 10 Mobile 専用 API の使用
モバイル専用 API (たとえば、 HardwareButtons) を使用すると、Arm アプリで問題が発生する可能性があります。 これを軽減するために、これらの API を呼び出す前に、アプリが Windows 10 Mobile で実行されているかどうかを動的に検出できます。 詳細については、「 API コントラクトを使用して機能を動的に検出する」を参照してください。
UWP アプリでサポートされていない依存関係を含む
Visual Studio と UWP SDK で適切にビルドされていないユニバーサル Windows プラットフォーム (UWP) アプリは、Arm64 システムで実行されている Arm アプリでは使用できない OS コンポーネントに依存している可能性があります。 これらの依存関係の例を次に示します。
- .NET Framework の一部が使用可能になる予定です。
- UWP と互換性のないサードパーティの .NET コンポーネントを参照する。
これらの問題は、使用できない依存関係を削除し、最新の Microsoft Visual Studio および UWP SDK バージョンを使用してアプリを再構築することで解決できます。または最後の手段として、Microsoft Store から Arm アプリを削除して、x86 バージョンのアプリ (使用可能な場合) がユーザーの PC にダウンロードされるようにします。
UWP アプリで使用できる .NET API の詳細については、UWP アプリの .NET に関するページを参照してください。
以前のバージョンの Visual Studio と SDK を使用してアプリをコンパイルする
問題が発生している場合は、Microsoft Visual Studio と Windows SDK の最新バージョンを使用してアプリをコンパイルしてください。 以前のバージョンの Visual Studio と SDK でコンパイルされたアプリには、新しいバージョンで修正された問題が発生する可能性があります。
デバッグ
Arm プラットフォーム用のアプリを開発するために、既存のツールを使用できます。 役に立つリソースを次に示します。
- Visual Studio 15.5 Preview 1 以降では、ユニバーサル認証モードを使用した Arm32 アプリの実行がサポートされています。 これにより、必要なリモート デバッグ ツールが自動的にブートストラップされます。
- Arm でデバッグするためのツールと戦略の詳細については、「 Debugging on Arm64 」を参照してください。
Windows on Arm