アプリケーションは、実際のデバイスにデプロイされた場合にのみ iOS ネイティブプラグインを呼び出しできます。すべてのネイティブコードメソッドを追加の C# コードレイヤーでラップし、アプリケーションがデバイス上で実行されているときにのみネイティブメソッドを呼び出すようにします。この C# ファイルをプロジェクトの Assets フォルダーに保存します。
この C# レイヤーは プラットフォーム条件付きコンパイル を使用するか、Application.platform で確認を行うことができます。Unity エディターで実行されているコードの場合は、プレースホルダー値を返します。
これらのメソッドの簡単な実装については、以下のセクションを参照してください。より詳細な実装については、Bonjour Browser サンプル をダウンロードしてください。
プラットフォーム依存のコンパイルは、ランタイムではなくコンパイル時に評価されるため、Application.platform よりも高速です。
条件付きコンパイルを実装するには、以下を使用します。
void MyMethod()
{
#if UNITY_IOS && !UNITY_EDITOR
CallNativeMethodImplementation();
#else
CallEditorMethodImplementation();
#endif
}
以下を使用して Application.platform を実装し、エディターのプレースホルダー値を返します。
void MyMethod()
{
if (Application.platform != RuntimePlatform.OSXEditor)
{
return _GetLookupStatus();
}
else
{
return "Done";
}
}