プラットフォーム機能

.NET Multi-Platform App UI (.NET MAUI) でサポートされている各プラットフォームには、C# からアクセスできる固有のオペレーティング システムとプラットフォーム API が用意されています。 .NET MAUI には、このプラットフォーム機能の多く (センサーへのアクセス、アプリが実行されているデバイスに関する情報へのアクセス、ネットワーク接続の確認、データの安全な格納、ブラウザーベースの認証フローの開始など) にアクセスするためのクロスプラットフォーム API が用意されています。

.NET MAUI では、これらのクロスプラットフォーム API をさまざまな機能領域に分離しています。

アプリケーション モデル

.NET MAUI では、Microsoft.Maui.ApplicationModel 名前空間に次の機能が用意されています。

機能 説明
アプリの操作 AppActions クラスを使用すると、アプリのショートカットを作成して応答できます。これにより、アプリを起動する追加の方法が提供されます。 詳細については、「アプリの操作」を参照してください。
アプリ情報 AppInfo クラスを使用すると、基本的なアプリ情報にアクセスできます。これには、アプリ名とバージョン、デバイスの現在アクティブなテーマが含まれます。 詳細については、「アプリ情報」を参照してください。
Browser Browser クラスを使用すると、アプリはアプリ内ブラウザーまたはシステム ブラウザーで Web リンクを開くことができます。 詳細については、「ブラウザー」を参照してください。
Launcher Launcher クラスを使用すると、アプリで URI を開くことができ、他のアプリのカスタム URI スキームにディープ リンクするときによく使用されます。 詳細については、「ランチャー」をご覧ください。
メイン スレッド: MainThread クラスを使用すると、UI スレッドでコードを実行できます。 詳細については、メイン スレッドに関するページを参照してください。
Maps Map クラスを使用すると、アプリがシステム マップ アプリを特定の場所や位置マークで開くことができます。 詳細については、マップに関するページを参照してください。
アクセス許可 Permissions クラスを使用すると、実行時にアクセス許可を確認および要求できます。 詳細については、「 アクセス許可」を参照してください。
バージョンの追跡 VersionTracking クラスを使用すると、アプリのバージョンとビルド番号を確認し、アプリが初めて起動されたかどうかを判別できます。 詳細については、「バージョンの追跡」を参照してください。

通信

.NET MAUI では、Microsoft.Maui.ApplicationModel.Communication 名前空間に次の機能が用意されています。

機能 説明
連絡先 Contacts クラスを使用すると、アプリは連絡先を選択し、それに関する情報を読み取ることができます。 詳細については、「連絡先」を参照してください。
メール Email クラスを使用して既定のメール アプリを開き、指定した受信者、件名、本文を含む新しい電子メールを作成できます。 詳細については、「メール」を参照してください。
ネットワーク Microsoft.Maui.Networking 名前空間の Connectivity クラスを使用すると、アプリが実行されているデバイスのネットワーク アクセシビリティを調べることができます。 詳細については、「接続」を参照してください。
電話のダイヤラー PhoneDialer クラスを使用すると、アプリはダイヤラーで電話番号を開くことができます。 詳細については、「電話ダイヤラー」を参照してください。
SMS (メッセージ) Sms クラスを使用して、既定の SMS アプリを開き、受信者とメッセージを事前に読み込むことができます。 詳細については、「SMS」を参照してください。
Web Authenticator Microsoft.Maui.Authentication 名前空間の WebAuthenticator クラスを使用すると、ブラウザー ベースの認証フローを開始できます。このフローは、アプリに登録されている特定の URL へのコールバックをリッスンします。 詳細については、「Web Authenticator」を参照してください。

デバイスの機能

.NET MAUI では、Microsoft.Maui.Devices 名前空間に次の機能が用意されています。

機能 説明
バッテリー Battery クラスを使用すると、アプリでデバイスのバッテリ情報を確認し、バッテリの変更を監視できます。 詳細については、「バッテリ」を参照してください。
デバイス ディスプレイ DeviceDisplay クラスを使用すると、アプリはデバイスの画面メトリックに関する情報を読み取ることができます。 詳細については、デバイス ディスプレイに関するページを参照してください。
デバイス情報 DeviceInfo クラスを使用すると、アプリは、アプリが実行されているデバイスに関する情報を読み取ることができます。 詳細については、「デバイス情報」を参照してください。
デバイス センサー Microsoft.Maui.Devices.Sensors 名前空間の型は、デバイスの加速度計、バロメーター、コンパス、ジャイロスコープ、磁力計、向きセンサーへのアクセスを提供します。 詳細については、デバイス センサーに関するページを参照してください。
懐中電灯 FlashLight クラスを使用すると、デバイスのカメラ フラッシュのオンとオフを切り替えて、懐中電灯をエミュレートできます。 詳細については、「懐中電灯」をご覧ください。
ジオコーディング Microsoft.Maui.Devices.Sensors 名前空間の Geocoding クラスは、位置マークを位置座標にジオコーディングし、座標を位置マークに逆ジオコーディングする API を提供します。 詳細については、「ジオコーディング」をご覧ください。
位置情報 Microsoft.Maui.Devices.Sensors 名前空間の Geolocation クラスは、デバイスの現在の位置情報座標を取得するための API を提供します。 詳細については、「Geolocation」をご覧ください。
Haptic フィードバック デバイス上の HapticFeedback クラス コントロールの触覚フィードバックは、一般に優しい振動感覚として現れ、ユーザーに応答を与えます。 詳細については、「触覚フィードバック」を参照してください。
振動 Vibration クラスを使用すると、必要な時間、振動機能を開始および停止できます。 詳細については、「振動」を参照してください。

メディア

.NET MAUI では、Microsoft.Maui.Media 名前空間に次の機能が用意されています。

機能 説明
メディア ピッカー MediaPicker クラスを使用すると、デバイスで写真やビデオを選択または撮影するように、ユーザーにプロンプトを表示することができます。 詳細については、メディア ピッカーに関するページを参照してください。
Screenshot Screenshot クラスを使用すると、現在表示されているアプリの画面をキャプチャできます。 詳細については、「スクリーンショット」を参照してください。
音声変換 TextToSpeech クラスを使用すると、アプリは組み込みの音声合成エンジンを利用して、デバイスからテキストを読み上げられます。 詳細については、「音声合成」を参照してください。
単位コンバーター UnitConverters クラスは、測定単位を別の単位に変換するのに役立つ単位コンバーターを提供します。 詳細については、「単体コンバーター」を参照してください。

共有

.NET MAUI では、Microsoft.Maui.ApplicationModel.DataTransfer 名前空間に次の機能が用意されています。

機能 説明
クリップボード Clipboard クラスを使用すると、アプリでシステム クリップボードとの間でテキストをコピーして貼り付けることができます。 詳細については、「クリップボード」を参照してください。
ファイルとコードを共有する Share クラスは、テキストや Web リンクなどのデータをデバイスの共有関数に送信する API を提供します。 詳細については、「共有」を参照してください。

ストレージ

.NET MAUI では、Microsoft.Maui.Storage 名前空間に次の機能が用意されています。

機能 説明
ファイル ピッカー FilePicker クラスを使用すると、デバイスから 1 つ以上のファイルを選択するように、ユーザーにプロンプトを表示することができます。 詳細については、「ファイル ピッカー」を参照してください。
ファイル システム ヘルパー FileSystem クラスは、アプリのキャッシュ フォルダーとデータ フォルダーにアクセスするヘルパー メソッドを提供し、アプリ パッケージに格納されているファイルへのアクセスに役立ちます。 詳細については、「ファイル システム ヘルパー」を参照してください。
ユーザー設定 Preferences クラスは、アプリの基本設定をキーと値のストアに格納するのに役立ちます。 詳細については、「ユーザー設定」を参照してください。
セキュリティで保護されたストレージ SecureStorage クラスは、単純なキーと値のペアを安全に格納するのに役立ちます。 詳細については、「セキュリティで保護されたストレージ」を参照してください。

プラットフォーム API にアクセスする

.NET MAUI のプラットフォーム固有を使用すると、特定のプラットフォームでのみ利用可能な特定の機能を使用できます。 詳細については、Android プラットフォーム固有設定iOS プラットフォーム固有設定、および Windows プラットフォーム固有設定に関するページを参照してください。

特定のプラットフォーム API にアクセスするための API が .NET MAUI によって提供されていない場合は、必要なプラットフォーム API にアクセスするための独自のコードを記述できます。 詳細については、「プラットフォーム コードを呼び出す」をご覧ください。