Xamarin.Essentials には、任意の iOS、Android、または UWP アプリケーションと連携する単一のクロスプラットフォーム API が用意されていて、ユーザー インターフェイスがどのように作成されたかを問わず共有コードからアクセスできます。 サポートされているオペレーティング システムについて詳しくは、プラットフォームと機能のサポート ガイドに関するページをご覧ください。
インストール
Xamarin.Essentials は、NuGet パッケージとして入手でき、Visual Studio のすべての新しいプロジェクトに含められます。 また、次の手順で Visual Studio を使用して既存のプロジェクトに追加することもできます。
Xamarin 用の Visual Studio ツールと共に、Visual Studio をダウンロードしてインストールします。
既存のプロジェクトを開くか、Visual Studio C# (Android、iPhone と iPad、またはクロスプラットフォーム) の下の空のアプリ テンプレートを使用して新しいプロジェクトを作成します。
重要
UWP プロジェクトに追加する場合、プロジェクトのプロパティにビルド 16299 以上が設定されていることを確認します。
各プロジェクトに Xamarin.Essentials NuGet パッケージを追加します。
ソリューション エクスプローラー パネルでソリューション名を右クリックし、 [NuGet パッケージの管理] を選択します。 Xamarin.Essentials を検索し、Android、iOS、UWP、.NET Standard の各ライブラリを含め、すべてのプロジェクトにパッケージをインストールします。
Xamarin.Essentials への参照を任意の C# クラスに追加し、API を参照します。
using Xamarin.Essentials;
Xamarin.Essentials では、プラットフォーム固有の設定が必要です。
Xamarin.Essentials では最低限の Android バージョン 4.4 (API レベル 19 に対応) がサポートされていますが、コンパイルのターゲットの Android バージョンは 9.0 または 10.0 (API レベル 28 およびレベル 29 に対応) である必要があります。 (Visual Studio では、これらの 2 つのバージョンは、[Android マニフェスト] タブ内の、Android プロジェクトの [プロジェクトのプロパティ] ダイアログで設定されます。Visual Studio for Mac では、これらは [Android アプリケーション] タブ内の、Android プロジェクトの [プロジェクト オプション] ダイアログで設定されます。)
Android 9.0 に対してコンパイルする場合、Xamarin.Essentials では、必要とされているバージョン 28.0.0.3 の Xamarin.Android.Support ライブラリがインストールされます。 アプリケーションで必要となるその他の Xamarin.Android.Support ライブラリも、NuGet パッケージ マネージャーを使用してバージョン 28.0.0.3 に更新する必要があります。 アプリケーションで使用される Xamarin.Android.Support ライブラリはすべて同じであり、かつ少なくともバージョン 28.0.0.3 以上である必要があります。 ソリューションでの Xamarin.Essentials の NuGet の追加や NuGet の更新で問題が発生する場合は、トラブルシューティングのページを参照してください。
バージョン 1.5.0 以降では、Android 10.0 に対してコンパイルする場合、Xamarin.Essentials では、必要とされている AndroidX サポート ライブラリがインストールされます。 まだ移行を行っていない場合は、AndroidX のドキュメントに目を通してください。
Android プロジェクトの
MainLauncher
、または起動されるすべてのActivity
では、OnCreate
メソッド内で Xamarin.Essentials を初期化する必要があります。protected override void OnCreate(Bundle savedInstanceState) { //... base.OnCreate(savedInstanceState); Xamarin.Essentials.Platform.Init(this, savedInstanceState); // add this line to your code, it may also be called: bundle //...
Android 上で実行時のアクセス許可を処理するには、
OnRequestPermissionsResult
で、すべての Xamarin.Essentials を受け取る必要があります。 すべてのActivity
クラスに次のコードを追加します。public override void OnRequestPermissionsResult(int requestCode, string[] permissions, Android.Content.PM.Permission[] grantResults) { Xamarin.Essentials.Platform.OnRequestPermissionsResult(requestCode, permissions, grantResults); base.OnRequestPermissionsResult(requestCode, permissions, grantResults); }
Xamarin.Essentials のガイドに従ってください。各機能に対するコード スニペットをコピーして貼り付けることができます。
Xamarin.Essentials - モバイル アプリ用のクロスプラットフォーム API (ビデオ)。
その他の参照情報
Xamarin を使用したことがない開発者は、Xamarin 開発の概要に関するページを参照することをお勧めします。
現在のソース コード、今後の導入されることの内容、サンプルの実行、リポジトリの複製について確認するには、Xamarin.Essentials の GitHub リポジトリにアクセスしてください。 コミュニティへの投稿も歓迎します。
のすべての機能について、API ドキュメントXamarin.Essentialsを参照します。