Windows10 アニバーサリーアップデート(AU)が配信されて徐々に更新されていっているかと思います。この Windows10 AU で、ユニバーサルWindows プラットフォーム(UWP) アプリのインストールについて、更新がありました。
この変化が個人的に興味深いものだったのでご紹介します。
なお Windows8.xでのストアアプリの情報を把握仕切れていないため、新旧比較の点では間違いが含まれるかもしれませんのでご注意願います。
従来までのUWPアプリのインストール
UWPアプリは基本的には Windows ストアから入手して、インストールされるものです。
Windowsストアは公開されているものなので、企業内で使用したいアプリについては使用できません。
これに対しての方法として、サイドローディングによるインストールという方法があります。この場合では直接アプリを各PCにインストールすることができるのですが、ドメインに参加している Windows8.1が必要でした。そしてそのサイドローディングするためのライセンスも別途必要になっていました。
Windows10 AU 以前ではサイドローディングの機能自体は OS 標準の機能として含まれ、Home エディションから使用可能でした。またサイドローディング用のライセンスも不要になりました。
このサイドローディングでインストールされるアプリは、野良アプリという表現が近いかもしれません。
開発時には、Visual Studio で 開発者ライセンスを取得することでUWPアプリの開発・実行が可能でした。またこの開発者ライセンスをターゲットのPC/タブレットにインストールすることで、検証目的でアプリをインストールできます。インストールの仕方は、パッケージ作成の際に含まれる PowerShell スクリプトを実行するだけです。
変更された点
Windows10 においても基本的には変わらず、変わった部分はサイドローディングの点になります。
アプリケーションのパッケージとして、 APPX ファイルができます。
サイドローディングを許可する OSの設定であれば、この APPX ファイルから直接インストールが可能になりました。ダブルクリックだけでインストールが可能になり、手軽になりました。
これを実現しているのが AppInstaller というものらしいです。
これにより APPX を直接配布できるため、ストア以外からの入手して試すということができるようになりました。
制限事項
App Installer により野良アプリが増えそうな感じですが、そうならないことが予想されます。
APPX は署名済みのパッケージです。APPX直接配布ではこの署名が問題になります。
この APPX が “信頼されたルート証明書” で署名されているかどうか、使用した証明書がローカルコンピュータのルート証明書に入っているかどうかによってインストールの成否が分かれます。
ちゃんとしたところで証明書を購入して APPX を署名して配布するのであれば問題なく各自導入できます。(証明書が Trusted Root へつながることができるのであれば)。
使用できる証明書の購入は手軽ではないため、野良アプリが増殖していくことは少ないかと思います。
検証
VisualStudio 2015 で UWP アプリを作成して APPX ダブルクリックでインストールするまでを試してみたいと思います。
インストールする先として別環境の Windows10AU インストール済みの PC が必要です。
アプリの準備
VisualStudio 2015 で 適当な UWP アプリケーション を作ってみました。
テンプレートとしてできた MainPage.xaml に対して以下のように編集しただけのものです。
<Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}"> <TextBlock Text="Hello,World" Foreground="Red" HorizontalAlignment="Center" VerticalAlignment="Center"/> </Grid>
あとはアプリ/パッケージの作成 を実行して、APPX パッケージを作成します。
インストール
APPX で使用したテストのオレオレ証明書を ローカルコンピュータの信頼されたルート証明機関に登録しておきます。また OS の設定で、開発者向け:サイドローディング に変更しておきます。
できた APPX パッケージを対象PCにコピーしてダブルクリックすると以下のように表示されます。
証明書の問題がなければ以下のように成功します
証明書の設定に問題がある場合には以下のような感じでインストールに失敗します。
インストールに成功した状態でアプリを起動してみたのが以下の図です。
まとめ
以前と比べると簡単にサイドローディングによるアプリのインストールができるようになりました。企業であれば比較的簡単に証明書をとることもできるでしょう。個人での APPX 個別配布は難しいところがありますが、個人なら不特定多数への配布はストアを使えばいいわけですし、さらに限られた人数ならば今回の方法で対処してしまうのもありでしょう。
参考
以下のサイトがすごく参考になりました。ちょっと前の記事ですが今でもおおよそ同じだと思います。