Windows 10 ビルド 15063 の開発者向け新着情報

Windows 10 ビルド 15063 (Creators Update またはバージョン 1703 とも呼ばれます) では、Visual Studio 2019 や更新された SDK と組み合わせて使うことで、優れたユニバーサル Windows プラットフォーム アプリを作成するためのツール、機能、エクスペリエンスが利用可能になります。 Windows 10 のツールと SDK をインストールすると、新しいユニバーサル Windows アプリを作成したり、Windows の既存のアプリ コードがどのように使えるかを試したりすることができます。

ここには、開発者にとって重要な新機能や強化された機能を集めました。 Windows SDK に追加されたすべての新しい名前空間の一覧については、「Windows 10 ビルド 15063 API の変更点」をご覧ください。 Windows 10 での注目すべき機能について詳しくは、「Windows 10 の優れた機能」をご覧ください。 また、Windows プラットフォームに過去に追加された機能と今後追加される機能の概要については、Windows 開発者向けプラットフォーム機能に関するページをご覧ください。

Windows 10 ビルド 15063 - 2017 年 3 月

機能 説明
バックグラウンド タスク バック グラウンド タスクをグループで登録できるようになりました。これにより、バック グラウンド タスクの名前空間に近い機能が提供されます。 バックグラウンド タスクをグループの一部として登録/登録解除して、タスクの登録を分離することができます。 このように分離することで、アプリの異なるコンポーネントや異なるライブラリによって互いのバックグラウンド タスク登録が干渉されることがなくなります。

企業は、パッケージのフレンドリ名に基づいて UWP アプリのバックグラウンド アクティビティを有効化または無効化することができます。

バック グラウンド タスクは、マルチ インスタンスにすることができるようになりました。 それぞれに CPU 制限およびメモリ制限がある新しいプロセスで各インスタンスが実行されるように指定することもできます。
Bluetooth 低エネルギー Generic Attributes (GATT) サービスの公開は、フォアグラウンドの GattServiceProvider クラスとバックグラウンドの GattServiceProviderTrigger クラスでサポートされるようになりました。

サポートされる無線で、Bluetooth 周辺機器ロールを使用できるようになりました。 サポートを確認するには、IsPeripheralRoleSupported を使います。

最初にデバイスのペアリングを行っていない状態で、Bluetooth の低エネルギー デバイスと通信します。 Windows.Devices.Bluetooth.BluetoothLEDevice クラスと、ペアリングしていない状態の接続に対応している GenericAttributeProfile 名前空間の API をご覧ください。
コンポジション Windows.UI.Composition 名前空間には、以下のように新しいまたは更新された API が多数あります。
* AnimationDelayBehavior enum
* CompositionCapabilities クラス
* CompositionDrawingSurface クラス
* CompositionGraphicsDevice クラス
* CompositionVirtualDrawingSurface クラス
* Compositor クラス
* KeyFrameAnimation クラス
* Visual クラス
* CompositionConditionalValue クラス
* InteractionTracker クラス
* VisualInteractionSource クラス
連絡先 タスク バーまたはスタート メニューに連絡先をピン留めします。 ピン留めされた連絡先をユーザーがクリックすると表示される新しい軽量な連絡先パネルに、連絡先情報を表示できます。 ユーザーが連絡先パネルのリンクを選択することで、アプリに連絡先を表示できます。
顧客注文データベースのサンプルの更新 GitHub にある顧客注文データベースのサンプルが更新され、Telerik のデータ グリッド コントロールとデータ入力検証機能を利用するようになりました。このコントロールは UI for UWP スイートの一部です。 UI for UWP スイートは、.NET Foundation を通じてオープン ソース プロジェクトとして利用できる、20 を超えるコントロールのコレクションです。
デスクトップ ブリッジ 新しいアプリ拡張機能は、アプリの変換済みバージョンにユーザーを移行するために役立ちます。また、エクスプローラーと統合し、さらに多くの方法でアプリを起動して、他のアプリと統合するためにも使用できます。 Desktop to UWP Bridge: アプリの拡張機能に関するページを参照してください。

アプリのパッケージ外のプロセスを開始し、変換済みアプリの仮想化環境内で実行します。 これらのプロセスは、dll ファイルなど、アプリのリソースにアクセスできます。 UpdateProcThreadAttribute 関数の PROC_THREAD_ATTRIBUTE_DESKTOP_APP_POLICY 属性に関するドキュメントをご覧ください。
Direct3D Direct3D 12 では、アトミック バッファー コピー (遅延ラッチ手法に対応)、プログラム可能なサンプル位置、深度境界のテスト、常駐優先順位などをサポートするための新しい API が追加されています。

Direct3D 11 のマルチ デバイス シナリオと、Direct3D 11 と Direct3D 12 との間の相互運用のシナリオをサポートするために、Fence API が追加されました。 ランタイムでは、アプリケーションの読み込み時間とパフォーマンスを向上させるためにシェーダーの OS 管理キャッシュがサポートされるようになりました。
EdgeHTML 15 Microsoft Edge および JS ベースのユニバーサル Windows プラットフォーム アプリに対応する Web プラットフォームは、EdgeHTML 15 に更新され、支払い要求 API、WebVR、コンテンツ セキュリティ ポリシー 2 などのサポートが追加されました。 すべての変更内容については、Microsoft Edge 開発者ガイドをご覧ください。
FlightStick と RawGameController Windows.Gaming.Input 名前空間に、新しい API が追加されました。これには、フライト スティック未加工のゲーム コントローラー などのサポートが含まれています。これらを使用すると、あらゆるタイプのコントローラーから入力を取得でき、プレイヤーはカスタムの入力マッピングを選択できます。
Win32 の高 DPI デスクトップ アプリケーションに、新しい "Per-Monitor v2" DPI 対応コンテキストが追加されました。 Per Monitor v2 でも引き続き、関連する DPI が変化するたびにウィンドウの倍率が自動的に調整されますが、これに加えてトップレベル ウィンドウごとに、新しい DPI スケーリング動作にアプリケーションがアクセスできます。
インク Ink では、分度器と定規のステンシル、インク入力タイム スタンプ、改良されたハイ コントラストの蛍光ペン、プログラムによるインク ストローク作成などのサポートが追加されました。

Ink 分析では、Windows Ink アプリのインク ストローク入力分析が提供されます。これには、図形の検出と認識、手書き認識、レイアウトの解釈/分類などが含まれます。

また、Ink ツール バーについても、ステンシル ボタン (定規と分度器用)、ポップアップ コントロールの種類、ポップアップの位置/向きなどを含めて全体的に改良されています。

手描き入力アプリを Ink ワークスペースで指定できるようになりました。
入力の挿入 入力の挿入では、さまざまなデバイスからの入力をプログラムで生成および自動化するためのサポートが提供されます。
IoT Windows IoT Core への更新内容には、Cortana のサポート、IoT ダッシュボードの機能強化、Azure Device Management のサポート、IoT 用 Device Guard などが含まれます。 最新機能を網羅した説明については、「Windows 10 IoT Core の新着情報」をご覧ください。
マップ レストランの写真など、画像を地図に追加できます。 これらの画像は地図のズーム レベルに基づいてサイズが変更され、画面からフェード イン/フェード アウトされます。 MapBillboard クラスをご覧ください。

ユーザーが指やペンで触れた領域を使用して、地図上の要素を取得できます。 MapControl.FindMapElementsAtOffset をご覧ください。

ユーザーが上下左右にパンするための機能を地図に追加できます。 MapControl.StartContinuousPanMapControl.TryPanAsyncMapControl.TryPanToAsync をご覧ください。

マップ コントロールの内側にパディングを追加します。 MapControl.ViewPadding をご覧ください。

スタイル シートを使用して、地図の外観をカスタマイズできます。 定義済みのスタイル シートを使うことも、JSON を使用してカスタムのスタイル シートを作成することもできます。 複数のスタイル シートを組合わせるだけで、優れた外観にすることができます。 MapControl.StyleSheet および MapStyleSheet をご覧ください。
マップ サービス オフラインで使用するマップ パッケージをダウンロードできます。 Windows.Services.Maps.OfflineMaps をご覧ください。

経由地を追加して、どのルートで地点から地点に向かうかを指定できます。 EnhancedWayPoint クラスをご覧ください。

渋滞を回避した推定移動時間を取得できます。 MapRouteLeg.DurrationWithoutTraffic および MapRoute.DurationWithoutTraffic をご覧ください。

渋滞の混雑レベルを取得できます。 MapRouteLeg.TrafficCongestion および MapRoute.TrafficCongestion をご覧ください。

舗装されていない道路、ルートに沿った天気、該当エリアで予定されているイベントなど、ルートやルート区間内で想定される問題を特定できます。 MeneuverWarning をご覧ください。
メディアのキャプチャ CaptureDeviceExclusiveControlStatusChanged イベントが導入され、キャプチャ デバイスの排他的コントロールを他のアプリが取得または解放したタイミングをリッスンできるようになりました。

MultiSourceMediaFrameReader が導入され、複数のキャプチャ デバイスから時間的に相関関係のあるフレームを受け取ることができるようになりました。

DepthMediaFrame オブジェクトでは MinReliableDepth および MaxReliableDepth プロパティが提供され、深さの値を信頼できる範囲にクランプできるようになりました。
メディア エンコード 新しい CodecQuery クラスを使うと、現在のデバイスにインストールされているオーディオとビデオのエンコーダー/デコーダーを照会できます。

HEVC ビデオ (CreateHevc) および FLAC と ALAC オーディオ (CreateFlacCreateAlac) のエンコード プロパティを作成するために、新しい静的メソッドが追加されました。
メディア再生 CurrentMediaPlaybackItemChangedEventArgs.Reason を使用すると、現在再生中のリスト内のトラックが変更された理由 (アプリでプログラムによってアイテムの切り替えが行われた、前に再生されていたアイテムが終了した、エラーが発生した、など) を確認できます。

MaxPlayedItemsToKeepOpen では、再生後にシステムによって開いた状態が維持される MediaPlaybackItem オブジェクトの最大数を指定できます。

IsDisabledInPlaybackList では、MediaPlaybackItemList 内の個々の MediaPlaybackItem オブジェクトの再生を無効にできます。

MediaSource では、現在のチャプター (MKV ビデオ内のものなど) の変更時にアプリが応答できるようにする ChapterCue がサポートされるようになりました。 SpeechCue クラスが追加され、TTS (text-to-speech) メディアの単語の境界、文の境界、SSML ブックマークに対してアプリが応答できるようになりました。 また、イメージベースの字幕 (VobSub や PGS など) が、ImageCue クラスでサポートされます。

アダプティブ ストリーミング用に AdaptiveMediaSourceDownloadStatistics および AdaptiveMediaSourceDiagnostics クラスが追加され、アダプティブ メディア要求に関する利用統計情報を提供できるようになりました。 状態および診断イベント用のイベント引数に RequestId プロパティが追加され、個々の要求に関するさまざまなイベントを関連付けるために使用できるようになりました。

メディア コンテンツを MediaSource にバインドする動作を再生時まで遅延するための MediaBinder で、AdaptiveMediaSource がサポートされるようになりました。

MediaPlayer で、再生用の表示フィールドや表示方向をプログラム的に設定するなどの球面動画投影がサポートされるようになりました。

MediaPlayer は、IsVideoFrameServerEnabled プロパティを設定してフレーム サーバー モードにすることができます。 このモードでは、メディア プレーヤー自体ではビデオ フレームが表示されず、各フレームについて VideoFrameAvailable イベントが生成されます。 このイベントでフレームを IDirect3DSurface にコピーして、シェーダーでカスタム処理を行うには、CopyFrameToVideoSurface メソッドを使用します。 CopyFrameToStereoscopicVideoSurfaces を使用すると、左眼用と右眼用のフレーム コンテンツを別々のサーフェスにコピーできます。
パッケージ 開発者は、機能とコンテンツをオプションのパッケージに分割して、アプリケーションをコンポーネント化することができます。 アプリのオプション パッケージをインストールする方法については、PackageCatalog.AddOptionalPackageAsync をご覧ください。アプリの実行時にストアによってどのオプション パッケージを自動的に更新するかを制御する方法については、Package.SetInUse をご覧ください。 オプション パッケージと関連セットを Visual Studio で作成する方法については、「オプション パッケージと関連セットの作成」をご覧ください。
支払い UWP アプリ用の新しい支払い要求 API により、アプリでのチェックアウト プロセスを簡略化できます。
UWP アプリでの支払いを簡略化する
Windows.ApplicationModel.Payments
POS (店舗販売時点管理) Windows.Devices.PointOfService 名前空間に新しい API が追加されました。これには、ライン ディスプレイ POS デバイス、拡張されたバーコード体系属性、特定の接続タイプに絞ってデバイスを選択する新しいメソッドのサポートが含まれます。
Android 用 Project Rome SDK UWP の Project Rome 機能が Android プラットフォームでも利用できるようになりました。 Windows デバイスだけでなく Android デバイスを使ってリモートでアプリを起動し、Windows デバイスで行っていた作業を続けることができます。 この機能を使い始めるには、公式のクロスプラットフォーム シナリオ向け Project Rome リポジトリをご覧ください。
Surface Dial RadialController 名前空間が更新され、メニュー表示、RadialController メニュー ボタン イベント、画面接触イベント、メニュー ボタンのフォント グリフ、その他のハプティクス (触覚) コントローラーに対する制御が強化されました。

ラジアル コントローラーのバックグラウンド処理を使用すると、ラジアル コントローラーの入力をバックグラウンド スレッドで管理できます。
音声合成 音声合成ストリームでは、単語や文の境界がサポートされるようになりました。
タスク Exchange スタイルのタスク一覧を作成し、そのリストにタスクを追加できます。 また、ご利用のアプリでは、他のアプリによって作成されたタスク上で、アクションの読み取りおよび実行を行うこともできます (例: Microsoft Outlook で作成されたタスク)。 Windows.ApplicationModel.UserDataTasks および Windows.ApplicationModel.UserDataTask.DataProvider 名前空間をご覧ください。 これらの API の形状と階層は、予定、連絡先、およびメールの API 名前空間の形状と階層に似ています。
タイルと通知 新しいプライマリ タイル API を使うと、アプリがピン留めされているかどうかを確認して、アプリをスタート画面にピン留めすることを要求できます。

トースト通知での進行状況バーの使用や、カスタム タイムスタンプの割り当てを行うことができます。また、トーストをヘッダーにグループとしてまとめることもできます。

アラーム シナリオを使うトーストは、非通知モードでも受け取れるようになりました。
UWP アプリ ストリーミング インストール ストリーミング インストールを使うと、完全にインストールされる前にアプリを起動できるため、ユーザーはアプリの使用を早く開始することができます。 アプリを起動するためにダウンロードする必要がある必須ファイルを定義し、ユーザーによるアプリの使用状態に応じて、バックグラウンドでダウンロードするファイルの優先順位を設定できます。 ストリーミング インストールの概念に関する概要については、「UWP アプリ ストリーミング インストール」をご覧ください。ストリーミング用のファイル グループにアプリを分割する方法については、「ソース コンテンツ グループ マップの作成と変換」をご覧ください。
Visual Studio 2017 Visual Studio 2017 の新しい更新プログラムでは、UWP ツールの機能強化が予定されています。これにより、Creators Update のリリースと Python ツールの追加がサポートされます。 この更新プログラムに含まれる新しい機能の概要をご確認ください
Windows 情報保護 (WIP) プライマリ ID をさらに簡単な方法 (プロパティの使用、セカンダリ ID やお子様の ID の使用) で取得できるようになりました。

特定のファイルを保護する必要がない場合に、そのことを容易に判断できます。 これにより、dll ファイル、実行可能ファイル、その他の構成ファイルなどのファイルを保護する必要がなくなります。

保護していたファイルの保護を解除する必要がある場合に、簡単に保護を解除できるようになりました。

別のアプリや実行中のプロセスに代わって、保護されたコンテンツへの一時的なアクセスを要求できるようになりました。 この機能は、アプリの保護されたプロセスと保護されていないプロセスの両方で保護されたデータを処理する場合や、ポリシーの許可一覧に記載されていない他のアプリと相互運用する場合に役に立ちます。

ProtectionPolicyManager クラスおよび FileProtectionManager クラスをご覧ください。
Windows Mixed Reality 拡張中の Windows Mixed Reality プラットフォームをサポートするために、Windows.Graphic.Holographic 名前空間、Windows.Perception.Spatial名前空間、および Windows.UI.Input.Spatial 名前空間に新しい API が追加されました。
XAML コントロール ContentDialog のボタンは次の 3 つになりました: [プライマリ]、[セカンダリ]、[閉じる]。 ボタンの 1 つを既定の動作に設定することもできます。

ShowAsMonochrome プロパティを使うと、ビットマップ アイコンを単色またはフル カラーで表示できます。

新しい SelectionChangedTrigger を使うと、ComboBox でキーボードによる選択の処理方法を変更できます。

ListViewBase の新しい API である PrepareConnectedAnimation と TryStartConnectedAnimationAsync により、リスト ビューやグリッド ビューで接続型アニメーションを簡単に使用できます。

新しい Icon プロパティを使うと、MenuFlyoutItem または MenuFlyoutSubItem にアイコンを追加できます。

SvgImageSource クラスを使うと、XAML で SVG イメージを追加できます。

LoadedImageSurface クラスを使うと、XAML でコンポジション サーフェスを追加できます。
XAMLLight クラスと UIElement.Lights プロパティを使うと、XAML で CompositionLight 効果を追加できます。

XamlCompositionBrushBase を使うと、XAML で合成ブラシを使用できます。