手順 1: UWP デバイス アプリを作成する
このトピックでは、Microsoft Visual Studio を使用して UWP デバイス アプリを作成するための基本的なプロセスについて説明します。 すべての UWP デバイス アプリに共通するタスクについて説明します。
UWP デバイス アプリは、デバイスの製造元が自社の内部デバイスまたは周辺機器のコンパニオンとして機能するように作成する特別な種類の UWP アプリです。 デバイス メタデータを使用すると、デバイス アプリは特権を必要とする操作を実行し、デバイスが接続されると自動的にインストールできます。 UWP デバイス アプリの詳細については、「UWP デバイス アプリの概要」を参照してください。
このトピックは、ステップ バイ ステップ シリーズの一部です。 概要については、「UWP デバイス アプリを手順に従って作成する」を参照してください。
開始する前に
このステップ バイ ステップ ガイドは、UWP アプリ プロジェクトを作成済みであること、そして必要なデバイス ドライバーが既に存在していることを前提としています。
Microsoft Store アプリ プロジェクトの作成
開始する前に、Visual Studio のインストールと UWP アプリ プロジェクトの作成を済ませておく必要があります。 まだ行っていない場合は、こちらからツールをダウンロードできます。 Microsoft Visual Studio の使用を開始するには、「Visual Studio を使用した UWP アプリの開発」を参照してください。
デバイス ドライバーの要件
一部の UWP デバイス アプリと API では、デバイスが Microsoft が提供するドライバーをサポートしているか、ドライバーが特定のドライバー モデルをサポートしている必要があります。 次のテーブルは、一部のデバイス アプリと API のドライバー要件の一覧です。
デバイス アプリまたは API | ドライバー情報 |
---|---|
カメラ用の UWP デバイス アプリ | カメラのドライバーでは AvStream ドライバー モデルを使用する必要があります。 AvStream ドライバー モデルの詳細については、Windows ドライバー キットの「AVStream の概要」を参照してください。 ドライバー MFT (メディア ファンデーション変換) と呼ばれる追加のコンポーネントをドライバー インストール パッケージと共に提供すると、カメラにカスタム効果を提供できます。 詳しくは、「カメラ用の Windows ストア デバイス アプリ」を参照してください。 |
プリンター用の UWP デバイス アプリ | プリンターには、v4 プリンター ドライバーを使用する必要があります。 詳細については、「v4 印刷ドライバーの開発」を参照してください。 |
USB API | Windows ランタイムWindows.Devices.UsbAPI を使用するには、デバイスが Winusb.sys ドライバーとの互換性を備えている必要があります。 |
ヒューマン インターフェイス デバイス (HID) API | HID API は、USB、Bluetooth、Bluetooth Smart、および I2C トランスポート経由で使用できるように設計されています。 Windows ランタイムWindows.Devices.HumanInterfaceDevice API を使用するには、デバイスが HIDClass.sys ドライバーおよびトランスポートに必要なドライバーとの互換性を備えている必要があります。 詳細については、「HID アーキテクチャ」を参照してください。 |
Bluetooth GATT API | Windows ランタイム Bluetooth GATT API、Windows.Devices.Bluetooth.GenericAttributeProfile を使用するには、デバイスが BthLEEnum.sys ドライバーとの互換性を備えている必要があります。 |
Bluetooth RFCOMM API | Windows ランタイム Bluetooth RFCOMM API、Windows.Devices.Bluetooth.Rfcomm を使用するには、デバイスが Rfcomm.sys ドライバーと BthEnum.sys ドライバーとの互換性を備えている必要があります。 |
重要
カスタム ドライバーを使用したデバイス アクセスには、Microsoft の承認が必要です。 カスタム ドライバーを使用して特殊デバイス用のデバイス アクセスを実装する OEM と IHV は、まず Microsoft の連絡先に問い合わせて、Windows エコシステム チームとシナリオについて話し合う必要があります。 詳細については、「PC 内部の特殊デバイス向け UWP デバイス アプリ設計ガイド」の「カスタム ドライバー アクセス モデル」セクションを参照してください。
Microsoft Store アカウントを作成する
Microsoft Store の開発者アカウントが必要です。 後の手順でアプリ マニフェストとデバイス メタデータを作成するときに、発行元名が必要になります。 ストア プロファイルを作成したら、アプリの名前を予約することもできます。
Microsoft Store アカウントを作成するには、UWP アプリのサインアップ ページに移動し、[サインアップ] をクリックします。
発行元の表示名を入力するときは、Microsoft Store でアプリがその下に一覧表示される名前を入力します。 アカウントの確認が完了するまで、この名前を変更することはできません。 顧客が閲覧しているときにこの名前が表示されるため、顧客はこの名前でアプリを覚えることになるため、この名前は慎重に選んでください。
アプリを Microsoft Store と関連付ける
Microsoft Store アカウントを作成し、発行元名を選んだら、アプリを Microsoft Store に関連付けます。 そうすると、Package.appxmanifest という名前のローカル アプリ パッケージ マニフェスト ファイルに次の値が自動的にダウンロードされます。
Package display name
パッケージ名
発行元 ID
Publisher display name
既にデバイス メタデータを開発している場合は、アプリを Microsoft Store に関連付けた後にアプリ マニフェストの値を使ってデバイス メタデータを更新する必要があります。
アプリを Microsoft Store に関連付けるには
ソリューション エクスプローラーで、プロジェクトを右クリックしてから、[Microsoft Store] > [アプリを Microsoft Store と関連付ける] を選択します。
[アプリを Microsoft Store に関連付ける] ダイアログ ボックスで、[次へ] をクリックします。 Microsoft Store にサインインするように求められます。
[サインイン] ページで、Microsoft Store にサインインしたら [次へ] をクリックします。
[このパッケージのアプリ名の選択] ページで、予約したアプリ名を選択します。 [名前の予約] をクリックし、Microsoft Store に移動して予約することもできます。
アプリ名を選択したら、[次へ] をクリックします。
概要ページで、選択した値を確認します。 問題がなければ、[関連付け] をクリックします。 それ以外の場合は、[前へ] をクリックして戻り、エラーを修正します。 [関連付け] をクリックすると、発行元の表示名とその他の値がアプリ パッケージ マニフェストに自動的にダウンロードされます。
アプリ パッケージ マニフェストを確認する
アプリを Microsoft Store に関連付けた後、アプリのパッケージ マニフェストを確認して、発行元の表示名とその他の値が想定どおりに挿入されたことを確認します。 アプリのタイトルと名前が、デバイスとの強い結びつきを示していることを確認してください。 また、アプリ パッケージで許可されるアプリが 1 つのみであることにご注意ください。
アプリ パッケージ マニフェストを確認するには
ソリューション エクスプローラーで、package.appxmanifest ファイルをダブルクリックします。 これでマニフェスト デザイナーが開きます。 マニフェスト デザイナーは、基になる XML ファイル用のグラフィカル UI です。
マニフェスト デザイナーでファイルを開いたら、[パッケージ] タブをクリックして、パッケージと発行元の情報を表示します。
XML で同じ情報を表示するには、package.appxmanifest を右クリックし、[プログラムから開く] > [XML (テキスト) エディター] を選択します。
パッケージ名、発行元名、アプリ ID を書き留めます。 それらは、次の手順「手順 2: デバイス メタデータを作成する」で必要になります。
発行元証明書を選択する
マニフェスト デザイナーでアプリ パッケージ マニフェストを確認している間に、マニフェストの発行元名と一致する発行元証明書を選択します。 マニフェスト デザイナーが [パッケージ] タブで開いている間に、[証明書の選択] をクリックして適切な証明書を選択します。
UWP デバイス アプリを開発する
UWP デバイス アプリの開発を開始するときは、次の点を考慮してください。
デバイスの機能
デバイスにアクセスするには、アプリ パッケージ マニフェストでデバイス機能を指定する必要がある場合があります。 これらは、アプリのプロジェクト内にある Package.appxmanifest ファイルの DeviceCapability 要素を使って指定します。 一部のデバイス機能は手動で指定する必要があることにご注意ください。 詳しくは、「パッケージ マニフェストでデバイス機能を指定する方法」を参照してください。
UWP デバイス アプリの自動再生
デバイスを接続すると、自動再生によって既定でアプリが起動します。 この機能を使用するには、アプリ パッケージ マニフェストとデバイス メタデータを編集する必要があります。 詳細については、「UWP デバイス アプリの自動再生」を参照してください。
バックグラウンドでデバイスを同期または更新する
デバイス バックグラウンド タスクを使用して、UWP デバイス アプリからデバイスを同期または更新できます。 この機能を使用するには、デバイス メタデータで特権アプリとしてアプリを指定する必要があります。 詳しくは、「UWP デバイス アプリのデバイスの同期と更新」を参照してください。
詳細情報
プリンター用の UWP デバイス アプリ: プリンターの状態を表示し、印刷設定エクスペリエンスを拡張します。 Windows 8.1 以降では、アプリで印刷ジョブを管理し、プリンター メンテナンスを実行することもできます。
カメラ用の UWP デバイス アプリ: カメラ オプション エクスペリエンスを拡張します。 アプリは、ドライバー MFT でカスタム効果を提供することもできます。
デバイスの統合: USB、HID、Bluetooth、スキャンなどの Windows ランタイム API について説明します。
内部デバイス用の UWP デバイス アプリ: OEM が PC 内部のデバイス用のデバイス アプリを作成する方法について説明します。
Windows アプリ認定キットを使用する
アプリが認定される可能性を最大限に高めるには、認定と Microsoft Store 登録のために提出する前に、コンピューターでアプリを検証しテストします。 詳細については、「Windows アプリ認定キット」を参照してください。