Share via


Xamarin.Essentials

重要

このプロジェクトは試験的なリリースです。 実験用モバイル Blazor バインドを試して、フィードバック https://github.com/xamarin/MobileBlazorBindingsをお寄せください。

Xamarin.Essentials には、モバイル アプリケーション開発用のクロスプラットフォーム API が用意されています。

Android、iOS、UWP では独自のオペレーティング システムとプラットフォーム API が提供されています。開発者は、Xamarin を活用して C# で そのすべてにアクセスできます。 Xamarin.Essentials は、ユーザー インターフェイスの作成方法に関係なく、共有コードからアクセスできる任意の Android、iOS、または UWP アプリケーションで動作する単一のクロスプラットフォーム API を提供します。

Xamarin.Essentials の概要

アプリケーションで Xamarin.Essentials API にアクセスするには、次の手順に従います。

  1. 既存のプロジェクトを開くか、 テンプレートを使用して新しいプロジェクトを作成する

  2. 各プロジェクトに Xamarin.Essentials の NuGet パッケージを追加します。

    ソリューション エクスプローラー パネルでソリューション名を右クリックし、 [NuGet パッケージの管理] を選択します。 Xamarin.Essentials を検索し、Android、iOS、UWP、.NET Standard ライブラリなど、すべてのプロジェクトにパッケージをインストールします。

  3. Xamarin.Essentials への参照を任意の C# クラスに追加して、API を参照します。

    using Xamarin.Essentials;
    
  4. ファイル内の Xamarin.Essentials for Razor ファイルへの参照を _Imports.razor 追加して、API を参照します。

    @using Xamarin.Essentials
    
  5. Xamarin.Essentials では、プラットフォーム固有の設定が必要です。

    Xamarin.Essentials では最小の Android バージョン 4.4 (API レベル 19 に対応) がサポートされていますが、コンパイルのターゲットの Android バージョンは 9.0 (API レベル 28 に対応) である必要があります。 (Visual Studio では、これらの 2 つのバージョンは、[Android マニフェスト] タブ内の、Android プロジェクトの [プロジェクトのプロパティ] ダイアログで設定されます。Visual Studio for Mac では、これらは [Android アプリケーション] タブ内の、Android プロジェクトの [プロジェクト オプション] ダイアログで設定されます。)

    Xamarin.Essentials では、必要なバージョン 28.0.0.1 の Xamarin.Android.Support ライブラリがインストールされます。 アプリケーションで必要となるその他の Xamarin.Android.Support ライブラリも、NuGet パッケージ マネージャーを使用してバージョン 28.0.0.1 に更新する必要があります。 アプリケーションで使用される Xamarin.Android.Support ライブラリはすべて同じであり、かつ少なくともバージョン 28.0.0.1 以上である必要があります。 Xamarin.Essentials の NuGet の追加、またはソリューションでの NuGet の更新に関して問題が発生した場合は、トラブルシューティングのページを参照してください。

    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 上で実行時のアクセス許可を処理するには、Xamarin.Essentials がすべての OnRequestPermissionsResult を受け取る必要があります。 すべての 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);
    }
    
  6. Xamarin.Essentials のガイドに従ってください。各機能に対するコード スニペットをコピーして貼り付けることができます。

詳細情報

Xamarin.Essentials の機能の詳細については、 Xamarin.Essentials のドキュメントを参照してください