Windows ランタイムサポート
Call native Windows Runtime APIs and custom .winmd files from managed code using IL2CPP on Universal Windows Platform.
読み終わるまでの所要時間 3 分最終更新 1ヶ月前
Unity には、ユニバーサル Windows プラットフォーム (UWP) 用の IL2CPP の Windows ランタイムサポートが含まれています。Windows ランタイムサポートを使用して、カスタムの .winmd ファイル同様、ネイティブシステムの Windows ランタイム API も直接マネージコード (スクリプトおよび DLL) から呼び出します。
自動的に IL2CPP で Windows ランタイムサポートを有効にするには、Player 設定 (Edit > Project Settings から Player カテゴリを選択) で、Configuration セクションに移動し、Api Compatibility Level を .NET 4.6 か .NET Standard 2.0 に設定します。

Player 設定の Configuration セクション上記のオプションは、選択したビルドプラットフォームによって異なります。
Windows ランタイムサポートが有効である場合、Unity は自動的に Windows ランタイム API (ユニバーサル Windows プラットフォームの Windows.winmd など) を参照します。カスタムの .winmd ファイルを使うには、それらを (付属の DLL すべて含めて) Unity のプロジェクトフォルダーにインポートします。それから、 Plugin Inspector を使ってファイルをターゲットプラットフォーム向けに設定します。

Plugin Inspector を使ってカスタムの .winmd ファイルを特定のプラットフォーム用に設定します
Unity プロジェクトの スクリプト では、 #define ディレクティブを使用して、プロジェクトで Windows ランタイムサポートが有効になっていることを確認できます。.winmd Windows API またはカスタム .winmd スクリプトを呼び出す前にこれを使用して、確実にそれらが実行されること、Windows に関連しないスクリプトはそれらを無視することを確認します。これは C#スクリプトでのみサポートされていることに注意してください。以下の例を参照してください。
ENABLE_WINMD_SUPPORT例
C#void Start() { #if ENABLE_WINMD_SUPPORT Debug.Log("Windows Runtime Support enabled"); // Put calls to your custom .winmd API here #endif}