Microsoft Storeのアプリは今までと何が違う?
Windows 10で登場したUWPアプリとは

2018/02/27

はじめに

Windows 10にはMicrosoft StoreというGoogle PlayやApp Storeのようなアプリストアがあります。Microsoft StoreはWindows 8時代の2012年、当初Windowsストアという名前でサービスが開始され、2017年からMicrosoft Storeという名前に変わりました。

従来のWindowsといえばインストーラーからアプリをインストールするのが一般的なので、まるでスマートフォンのようにストアからアプリをダウンロードすることに違和感を覚えた方もいるかもしれません。

ビジネス向けWindows Store

しかし、Windows 10においてMicrosoft Storeからアプリをインストールすることは、単にインストールの方法が変わっただけではないのです。Microsoft StoreのアプリはUWP(ユニバーサル Windows プラットフォーム)という新しいプラットフォームのアプリで、従来exeファイルやMSIファイル(Microsoft Windows Installer)を解凍してインストールしていたアプリとは仕組みが異なることは、ご存知ですか?

本記事では、Windows 10から登場した新しい「Microsoft Store アプリ(通称UWPアプリ)」の概要とメリットなどについてお伝えします。

UWPアプリとは

UWPとは、ユニバーサル Windows プラットフォームの略で、Wikipediaでは、 「ユニバーサルWindowsプラットフォームは、Windows 10にて導入された、様々なデバイス上で動作するアプリケーションを単一のフレームワーク上に統合する仕組みである。」と説明されています。

ユニバーサルWindowsプラットフォーム 〜 Wikipediaより

Microsoft Storeで配布されているアプリは、ユニバーサルWindowsプラットフォームを用いたアプリであり、Windows 10であれば異なるプラットフォームでも動くという意味です。

なお、UWPに対して、旧来の.NET Framework やWin32というAPIで作られたアプリのことを本記事ではWin32アプリと呼びます。

アプリ Win32(従来型)アプリ UWPアプリ
配布場所 自由 ・Microsoft Store
・ビジネス向けMicrosoft Store
・サイドローディング
インストール先 C:¥Program Files¥等
※アクセス可能な場所にファイルが保存される
個別のサンドボックス内で実行
・管理者ユーザーでもアクセスできない
インストールによる影響 ・OSのレジストリへの書き込み
・システムDLLの上書き
特になし

ではWindows 10プラットフォームには、パソコン・タブレットの他にどのような種類があるのでしょうか? 主なデバイスとOSの種類をまとめてみました。

デバイス OS
Windows Phone 端末 Windows 10 mobile
組み込みボードコンピュータ
(デジタルサイネージ、POS、産業機器など)
Windows 10 IoT
Microsoft HoloLens Windows Mixed Reality
(Windows Holographic)
Xbox One Xbox OS

UWPのアプリであればこれらのデバイス上でも動作することが可能です。ただし、どのアプリで動作可能かはアプリ側の仕様に委ねられているため、そのアプリがサポートされていないデバイスで使用することはできません。

UWPアプリの特徴

WindowsパソコンだけでなくXbox OneやHoloLensといったデバイスでも動作するUWPアプリですが、ほかにも以下のような特徴があります。

まず、仮想環境にてパッケージ化されてインストールされ、個別のサンドボックス(セキュリティ領域)内で実行されるという点です。これはiOSやAndroidのアプリと同じ仕組みとなります。

Win32のアプリはC:¥Program Files¥等にインストールされ、OSのレジストリに書き込まれ、DLL(ダイナミックリンクライブラリ)ファイルを利用していました。TempファイルやINIファイル等もローカルリソースにアクセスしていました。対してUWPアプリは、レジストリもDLLファイルも侵さず、ローカルリソースへのアクセスもありません。

続いて、UWPアプリはソースコードも互換性があり、Windows 10プラットフォーム間の共有はもちろん、iOSやAndroidといった異なるOSへ移植するときも、変更が容易であるということです。

さらに、Microsoft Storeからアプリをダウンロードするのが原則とはいえ、サイドローディングやビジネス向けMicrosoft Storeなど、通常のストア以外からUWPアプリを配布する方法も提供されていることも挙げておきましょう。

ビジネス向けWindows Store
ビジネス向けWindows Store

では、このようなUWPアプリの性質が、実際にどのようなメリットを生むのでしょうか。

UWPアプリのメリット

前述したように、サンドボックスという仮想環境内でアプリが実行されるため、OSへのウイルスやマルウェアの侵入が防がれ、セキュリティ強度が高いことが最大のメリットです。もしアプリがウイルスに侵されて、プログラムが異常を起こしたとしても、保護された領域内での動作に留まるために、OSのシステムファイルに影響を及ぼすことがありません。

次に、Microsoft Storeという統一のプラットフォームで常に最新バージョンのアプリを配信していることから、Win32アプリのように古いバージョンのインストーラーが配布・実行されてしまう心配がなくなります。組織がユーザーに配布するアプリのバージョン管理も、容易に統一が保てます。

また、開発側にとってのメリットとしては、マルチプラットフォーム対応のソースコードなので、開発コストと開発者の負担が減るということがあげられます。

UWPアプリ「Handbook」を実際に確認

それでは実際にUWPアプリをWindows 10のパソコンにインストールして、今までのWin32アプリとどのように違うのかを見ていきましょう。

MCMシステムであるHandbookもUWPアプリとしてMicrosoft Storeから無料で配信されています(Handbook for Windows 10)。

Handbook for Windows 10

今までであれば、まず.exeや.msiといったインストーラーをダウンロードし、それを解凍してインストールが進行するのが常でしたが、そのようなステップはなく、ストアからアプリを検索しワンクリックするだけでダウンロードからインストールまでが完了します。

使ってみると、タブレットモードにも対応し、2in1パソコンのキーボードを外してもタッチ操作でスムーズに利用できました。

従来は、C:¥Program Files配下などにアプリがインストールされているフォルダができているはずですが、どこにもありません。実はC:¥Program Files¥WindowsAppsという隠しフォルダに保存されていますが、管理者ユーザーでもアクセスできない仕組みになっています。

Handbookでコンテンツをダウンロードしても、ユーザーが見えるコンピューター内の場所にはファイルの形跡が残りません。サンドボックス内でアプリが動くというUWPアプリのセキュアな特徴をうかがい知ることができました。

UWPアプリの今後の展望

マイクロソフトとしては、今後すべてのアプリをUWP化したい意向を示しています。アプリの配布はMicrosoft Storeに絞り、セキュリティ的にも強化し、HoloLensやIoTといった次世代デバイスにも対応させたいようです。

UWPアプリの普及のため、マイクロソフトは昨年度、Win32アプリケーションをUWPアプリとして動作させるためのツール「Desktop App Converter」を開発者向けに公開しました。ビジネス向けのMicrosoft Storeも登場し、自社アプリも管理・配布することができます。

しかし、現状を考えるとUWPアプリへの全面移行は、スムーズにいくとは思えない点が多々あります。皮肉なことに、企業にとってWindowsを利用している理由は「昔のシステム」「昔のアプリ」が動くから、という理由が少なからずあり、未だにWindows 7がOSシェアの半数近くを占めている現状は、なるべく昔のOSで昔の通りに動かしたいという傾向を示すものでしょう。

開発コスト等の面から、レガシーアプリやシステムがすべてUWP化を果たすのは、まだまだ困難な道のりかもしれません。

まとめ

セキュリティ面やバージョン管理の面でメリットが非常に大きいUWPアプリ。Windows As Serviceというコンセプトを打ち出すマイクロソフトとしても移行を促進していますが、現状ユーザーの認知度も低く浸透しているとはいえません。

Windows 7のサポートが切れる2020年までに、企業のWindows 10導入が一気に加速するでしょうが、UWPアプリがどこまで普及するのか楽しみでもあります。

そしてビジネスシーンでもアプリのUWP化が進展したときは、Windowsパソコンに囚われず様々な種類のデバイスの導入を視野に入れ、適材適所に活用するマルチプラットフォーム化が更に進むのではないでしょうか。

参考

カテゴリ