一部の modern Windows エクスペリエンスでは、実行時にアプリに package ID が必要です (つまり、アプリは packaged である必要があります)。 これらのエクスペリエンスには、特定のWindows機能、特定のWindows ランタイム API、パッケージ拡張機能、UWP コンポーネントが含まれます。
ユニバーサル Windows プラットフォーム (UWP)アプリWindowsアプリ パッケージ (.msixまたはレガシ .appx) に配布されるため、既定でパッケージ ID を受け取ります。 WPF アプリなど、他の種類のWindows アプリも MSIX パッケージを使用して展開して、パッケージ ID を取得できます。
外部の場所でパッケージ化されたアプリは、Windows 10 バージョン 2004 (ビルド 19041) 以降でもパッケージ ID を持ちます。 これらの用語の詳細については、「 パッケージ化の概要」を参照してください。
パッケージ化されたアプリ (外部の場所でパッケージ化されたアプリを含む) のみが、実行時にパッケージ ID を持ちます。 アプリにパッケージ ID がある場合は、アプリで次の機能を使用できます。
| 機能 | Description |
|---|---|
| バックグラウンド タスク | データの同期、ダウンロードの処理、システム イベントへの応答など、アプリがフォアグラウンドにない場合にコードを実行します。 |
| Windows AI API (Phi Silica、OCR など) | ローカル言語モデル、テキスト認識、画像分析などのデバイス上の AI 機能にアクセスします。 パッケージ ID は 1 つの要件にすぎません。ハードウェア、Windowsバージョン、Windows アプリ SDKバージョン、機能、リージョンの要件は API によって異なります。 詳細については、Windows AI API の概要を参照してください。 |
| プッシュ通知 (WNS) | Windowsプッシュ通知サービスを通じて、クラウド サービスからリアルタイム通知を受信します。 バックグラウンド配信と COM のアクティブ化には、パッケージ ID が必要です。 |
| 共有ターゲット | システム共有シートを使用して、ユーザーが他のアプリのコンテンツを直接自分のアプリに共有できるようにします。 |
| カスタム コンテキスト メニュー拡張機能 | エクスプローラーやその他のシェル サーフェスの右クリック メニューにアプリのアクションを追加します。 |
| マニフェスト ベースのファイルの種類とプロトコルの関連付け | 特定のファイルの種類または URI プロトコル (たとえば、 yourapp://) のハンドラーとしてアプリを登録します。 |
| スタートアップ タスク | ユーザーがWindowsにサインインすると、アプリが自動的に起動します。 |
| アプリ サービス | 他のアプリが呼び出すことができるバックグラウンド サービスを公開し、アプリ間通信を有効にします。 |
通知
プッシュ通知には 、バックグラウンド配信と COM アクティブ化のパッケージ ID が必要です。これは、ほとんどの運用環境のプッシュ通知シナリオで必要になります。
Note
Windows アプリ SDK アプリ通知 API (ローカル アプリ通知) は、パッケージ化されたアプリとパッケージ化されていないアプリの両方で機能し、パッケージ ID は必要ありません。 詳細については、 アプリ通知のクイック スタートを参照してください。
パッケージ拡張機能との統合
アプリをシステムと統合する必要がある場合 (ファイアウォール規則の確立など)、アプリのパッケージ マニフェストでそれらのことを記述すると、システムによって残りの処理が行われます。 これらのタスクのほとんどでは、コードをまったく記述する必要はありません。 マニフェストに XML が少し含まれていると、ユーザーがログオンしたときにプロセスを開始する、などの操作を実行できます。エクスプローラーにアプリを統合する。をクリックし、他のアプリに表示される印刷ターゲットの一覧をアプリに追加します。
詳細については、 デスクトップ アプリとパッケージ拡張機能の統合に関するページを参照してください。
パッケージ アプリのアクティブ化情報の取得
Windows 10 バージョン 1809 以降では、パッケージ アプリは起動時に特定の種類のアクティブ化情報を取得できます。 たとえば、ファイルを開いたり、対話型トーストをクリックしたり、プロトコルを使用したりして、アプリのアクティブ化に関連する情報を取得できます。
詳細については、「 パッケージ アプリのアクティブ化情報を取得する」を参照してください。
既存のプロジェクトでWindows アプリ SDKを使用する
Windows アプリ SDKを使用すると、完全な書き換えを必要とせずに、WinUI 3 コントロール、プッシュ通知、アプリライフサイクル管理などの最新のWindows機能を既存の Win32 または.NET デスクトップ アプリに追加できます。
詳細については、「既存のプロジェクトにWindows アプリ SDK機能を追加するを参照してください。
Distribute
MSIX パッケージにアプリをパッケージ化する場合は、アプリをMicrosoft Storeに発行するか、システムにサイドローディングすることで、アプリを配布するのは非常に簡単です。
詳細については、「 アプリのパッケージ化とデプロイ」を参照してください。
Windows developer