2015年3月3日 11:10 AM

Windows 10 のユニバーサル アプリ プラットフォームのご紹介

本日バルセロナで開催された Mobile World Congress において、Windows 10 の開発者向けのプラットフォーム戦略とユニバーサル アプリ プラットフォームについてご紹介しました。詳しい情報は、4 月に開催予定の Build カンファレンス (英語) でお伝えしますので、ぜひお越しいただければ幸いです。

Windows 10 は Windows プラットフォームの統合を目標としてきた私たちの取り組みの完成形であり、統合された 1 つの Windows コアで実行されています。この統合により、ポケットの中のスマートフォン、かばんに入れたタブレットやノート PC、オフィスのデスクトップ PC、リビングの Xbox といったあらゆる Windows デバイスで、同じアプリを実行することが可能になります。他にも HoloLens (英語)Surface Hub (英語)、さらに IoT デバイスである Raspberry Pi 2 (英語) といった新しいデバイスが Windows ファミリーに加わりました。こうしたすべての Windows デバイスから Windows ストアに直接アクセスして、アプリの配布、入手、更新を行うことができます。

特定のデバイス ファミリーに特有の API (電話機のダイヤラーなど) についても、ユニバーサル プラットフォームではコンパイラの条件フラグを使用することなく、このような機能を手軽にアプリに搭載することができます。

この記事では、1 月の記事で提示した以下の 3 つの目標にこの新しいプラットフォームがどれだけ近づいたかについて簡単にご説明したいと思います。

  1. あらゆるデバイスに対応し、プラットフォームを拡大
  2. ほかにはないユニークなエクスペリエンスを提供
  3. 開発者の投資効果を最大化

Build カンファレンス (英語) では、ユニバーサル プラットフォームの技術的詳細のすべてをお伝えする予定です。ぜひご期待ください。

モバイル エクスペリエンスの強化で、あらゆるデバイスに対応し、プラットフォームを拡大

マイクロソフトが Windows を 1 つのコア、1 つの開発者向けプラットフォームとして統合する取り組みを進めてきた理由をご理解いただくには、まず、ユーザーとデバイスの関係、そしてデバイスに対するユーザーの期待値の変化について触れる必要があります。モバイル デバイスはこの 10 年のうちに爆発的な成長を遂げました。これまでになかった画期的なアプリのエクスペリエンスが生み出されてきたほか、既存の Web エクスペリエンスについても、開発者が革新的かつユニークな手法でユーザーとかかわることができるように変化してきました。これまで「モバイル エクスペリエンス」とは、モバイル デバイス、つまり、人が持ち歩く携帯端末向けにアプリや Web エクスペリエンスを開発することを指していました。

しかし、この定義はもはや窮屈なものとなりました。今、声高に求められているのは、あらゆるタイプのデバイスで使える共通のモバイル エクスペリエンスを開発し、作業の内容に応じてユーザーが最も便利で効率性の高いデバイスを選択できるようにすることです。

人々がモバイル エクスペリエンスにこうした要望を持っていることは、Windows ストアでのユーザーの検索内容を見ると一目瞭然です。1 年前は、Windows Phone から検索する場合、タブレットから検索する場合、ノート PC やデスクトップ PC から検索する場合、ゲーム機から検索する場合では、それぞれ検索する内容が異なっていました。しかし、状況は一変しました。現在の Windows ストアで検索される内容は、どのデバイス タイプからでも似通ったものになっています。同じアプリ カテゴリでも、異なるアプリ カテゴリでも同様です。

新たな「モバイル エクスペリエンス」に対応するプラットフォームを構築するには、さまざまなサイズの画面に対応するだけではなく、タッチ、マウスとキーボード、ゲーム コントローラー、ペンなどの各種操作モデルにも柔軟に対応する必要があります。ユーザーは使用するデバイスが変わると、操作方法も、プレイリストや曲の選択、ニュース フィードやドキュメントの閲覧、旅行写真の表示といったタッチ ジェスチャから、プレイリストの管理、ブログの新規作成、動画や写真の加工/共有といったキーボードとマウスによる生産的な操作へと切り替えることがあります。複数のデバイスを持ち歩くのは避けたいというのがユーザーの本音であり、このことから業界が注目したのが Surface Pro 3 のような 2-in-1 の複合的なデバイスで、今まさに普及しつつあります。アプリ エクスペリエンスとしては、ちょうどこのようなシナリオに対応したものが増えているところですが、開発者の中には、1 つ、あるいはいくつものモバイル アプリ、デスクトップ アプリ、Web サイトを作成することで、デバイス タイプごとのエクスペリエンスの差異を解消しようとしている方もいます。しかしマイクロソフトは、この状況がもっと楽になるべきだと考えています。

マイクロソフトは、Windows 10 によってモバイル デバイスという制限を取り払うことで、新しい「モバイル エクスペリエンス」のための新しい道を開拓し、ユーザーが日常生活の中であらゆるタイプのデバイスを用途に応じて最大限に活用できるようにすることを目指しています。Windows においては、1 つの Windows コアとユニバーサル アプリ プラットフォームによって、こうした新しいモバイル エクスペリエンスを提供します。

Gallo-blog-1-v2

マイクロソフトでは、ユニバーサル アプリ プラットフォームの開発を進めつつ、すべての Windows 開発者がこの 1 つのコアによるメリットを平等に得られるようにすることを目指しています。ユニバーサル アプリ プラットフォームでは、1 セットのビジネス ロジックと 1 つの UI を持つ、1 つのアプリを作成するだけで済みます。これが「Windows ユニバーサル アプリ」という、進化を遂げた新しい Windows アプリです。このアプリは、Windows ストアに 1 つのパッケージとして配信され、開発者が対象とするあらゆるタイプの Windows 10 デバイスで利用されます。Windows ユニバーサル アプリはすべてのデバイスに対して整合性が高いため、ユーザーは違和感なく使用することができます。また、各デバイスの入力モデルや画面サイズに合ったエクスペリエンスが提供されます。この新しいユニバーサル アプリ プラットフォームの実現により、マイクロソフトが進めてきた開発者向けプラットフォームの統合は完結を迎えました。そして開発者の皆様はアプリを 1 つ作成すれば、モバイル デバイス、デスクトップ PC、コンソール、ホログラム インターフェイス、さらに IoT デバイスにそのアプリを届けることができます。

ユーザー固有のカスタム エクスペリエンスを提供

ユニバーサル アプリ プラットフォームでは、高い整合性と柔軟性を備えた新しいモバイル エクスペリエンスをすばやく作成することができます。このため開発者の皆様は、ユーザーが満足できる高度なカスタム エクスペリエンスをアプリに構築し、対象とする各デバイス ファミリーに提供することができます。こうした適用処理の多くは、このユニバーサル アプリ プラットフォームに搭載されている多数の機能によって処理されます。この処理はスムーズに行われるため、開発者の皆様は次のようなユーザーの満足度を向上するエクスペリエンスの開発に集中することができます。

  • アダプティブ ユーザー エクスペリエンス: アプリの操作の仕方やそのデバイスで使用可能な機能に応じて、実行時にアプリの UI がスムーズに適応し、条件にあったエクスペリエンスをユーザーに提供できます。
    • 画面のレイアウト: アプリ モデルの基礎が改良されたほか、ViewStateManager も改良され、より適応性の高いエクスペリエンスを簡単に作成できるようになりました。このためユニバーサル アプリ プロジェクトでは、以前のように、画面サイズの大小を区別して個別にプロジェクトを進めたり、別の UI 定義を作成する必要がありません。ただし、オプションで個別の UI 定義を使用することもできます。
    • ユーザー管理: Windows 10 はユーザーによるアプリの操作方法を実行時に判断し、適切なユーザー エクスペリエンスを提供します。たとえば、タッチ スクリーン搭載のノート PC では、マウス クリックではなく画面のタップ操作を検知すると、アプリのフライアウト コントロールが大きめのタッチ ターゲットを表示します。
  • ユーザーによる自然な入力: Windows 10 では、自然音声、手書き入力、ジェスチャ、ユーザーの視線といった自然な入力方法をアプリに簡単に統合できるため、より個人に特化した人間らしいアプリ エクスペリエンスを構築することができます。すべての入力は Windows によって処理されるので、入力された内容がどのように解析されるかを心配する必要はありません。そのアプリに適した入力方法さえ考えていれば、あとは Windows がその入力方法が利用可能かどうかを判断したり、ユーザーの意図を解析したりといった作業を行います。
  • クラウドベースのサービス: Windows では Windows プッシュ通知サービス (WNS)、Windows データ ローミング、Windows 資格情報保管ボックスなど、アプリに使用できる多数のサービスを提供しています。Windows 10 では、拡張された Cortana AI、OneDrive、Application Insights など、さらに数多くの Windows サービスを開発者の皆様に提供します。Windows 以外にも、Microsoft Azure をより簡単にご利用いただけるように、Azure Mobile Services や Azure Notification Hubs といったサービスの充実に継続的に取り組んでいます。

しかし、モバイル エクスペリエンスは、ユーザーがアプリを終了した時点で終わるわけではありません。ユニバーサル プラットフォームの進化によって Windows シェルでも多数の機能が強化されたことによって、さらに簡単にユーザーをアプリにつなぎとめたり、アプリがより頻繁に起動されるようにすることができるようになりました。たとえば次の機能が強化されています。

  • Cortana の統合: Cortana の検索結果に直接アプリが表示されるようになりました (起動もできます)。検索結果はインストール済みのアプリの優先度が最も高く表示されます。
  • アクション センター: Windows 10 では、すべての Windows デバイスで一貫性と実用性が向上した通知エクスペリエンスを利用できます。

ユニバーサル アプリ プラットフォームは Windows 10 の中核を成すものであり、Windows の多数の主要機能 (インストール済みアプリ、Windows ストア、「Project Spartan」ブラウザーなど) に加えて、シェルの大部分がプラットフォーム上で実行されています。そして、これらのアプリで使用されているアニメーション、API、コントロールは開発者の皆様にもご利用いただけます。ユニバーサル アプリ プラットフォームは実践的な環境でテストされており、マイクロソフトが提供しているようなユーザーを満足させるモバイル エクスペリエンスの構築をすぐに開始することができます。

アプリと Web コードへの投資を最大限に活用
Windows 10 では、開発者の皆様がコードとスキルに投じてきたこれまでの投資を最大限に活用し拡張することができる新しいプラットフォームを通じて、既存のコードをさらに幅広い用途で有効活用できるようにすることを目指しています。

Windows 10 では、既存の Windows アプリやデスクトップ アプリが対象のデバイスで引き続きサポートされます。さらに、それらの投資を可能な限り簡単に新しいユニバーサル アプリ プラットフォームに移行できるように取り組みを進めています。

また、HTML 開発者の皆様にもご利用いただけるように、Windows には最新の Web に関連する次のような多数の機能強化が追加されています。

  • 新しいレンダリング エンジン: 新しいレンダリング エンジンによって、開発者の皆様は一貫したモバイル エクスペリエンスを実現するためのプラットフォーム固有の作業から解放されます。このエンジンは Internet Explorer 11 および新しい「Project Spartan」ブラウザーに含まれており、WebView コントロールによって使用されます。
  • Project Spartan」ブラウザー: 「Project Spartan」ブラウザーはそれ自体が Windows ユニバーサル アプリであり、Windows ストアを使用して更新されることで、常に最新の状態が維持されます。
  • Web アプリ: Windows 10 では、Windows ストアで発行できるように Web サイトをパッケージ化した Windows アプリを簡単に作成できます。アプリのインストール後は、Web サイトが JavaScript からユニバーサル API を更新して呼び出します。これにより、さらに魅力的なユーザー エクスペリエンスを提供できます。

Gallo-blog-2v2

来月後半には、Windows 10 Cordova プラットフォームの初のプロトタイプが Apache ブランチに提供される予定です。ここでは、開発者の皆様に更新のプレビューを行っていただき、マイクロソフトがそのフィードバックを収集できます。

Windows 10 への対応準備
今回は、Windows ユニバーサル アプリ プラットフォームを皆様に初めてご紹介しました。4 月に開催される Build カンファレンスでは、さらなる詳細情報をご案内する予定です。このイベントに直接お越しいただけない方は、オンラインで参加することもできます。ストリーミング配信される基調講演をリアルタイムで視聴するか、録画されたセッションを後日ご覧いただくことができます。詳細については、Build 2015 のサイト (英語) をご覧ください。

以下に Windows 10 の関連情報を用意しましたので、Build までの間にぜひこちらをご確認ください。

Build でさらに多くの情報をお伝えできることを楽しみにしています。ぜひご参加ください。