今年の2月くらいに調べたことをまとめてみます。未だにWin8アプリ開発関係のアクセスが多いので、参考になるかと思いまして。
誤りや古い情報があれば、教えていただけると幸いです。
- Windows 8のストアアプリは、Metro UI、Modern UI、Windows 8アプリなどとも呼ばれる。公式にはWindows ストア アプリで間違い無いと思う。ここでは単にストアアプリと呼ぶ。
- Windows 8のストアアプリは「アプリコンテナ」と呼ばれるサンドボックス内で動作する
- サンドボックス内から普通の.NET Frameworkのアセンブリは呼べない。(従って、たとえばRDBMSなんかに接続することがすごく難しい、というか無理?)
- 基本的に、アプリコンテナ上ではWindows ストアに登録された(認証された)アプリケーションしか実行できない
- Windowsストア以外で配布されたアプリケーションを実行する方法はいくつかあり、これらを「サイドローディング」と呼ぶ(ダウンロードとアップロードの中間の意味らしい)
- サイドローディング方法は以下の通り。
- 開発者ライセンスを取得して実行。開発者ライセンスがインストールされていれば、どのようなアプリケーションでも実行できる。Windows 8なPCがあれば開発者ライセンスを取得することができるが、1か月ごとの更新が必要
- Windows 2012 Serverを用意し、Active Directoryドメインに参加し、ドメインのグループポリシーでサイドローディングを許可する。
このとき、Windows 8 Enterpriseなクライアントはポリシーの許可だけでサイドローディングが可能になるが、それ以外のWindows 8では「サイドローディングプロダクトキー」を取得して、アクティベーションさせなければならない。
- 「サイドローディングプロダクトキー」はWindows 8をボリュームライセンスで買っていないと取得できない
- サイドローディングには正式なルート証明書によって署名されたアプリケーションパッケージが必要。オレオレ証明書ではだめ
- サイドローディングは基本的にPowerShell上からのインタフェースしか用意されていない
- 配布とインストールを容易にしてくれるソリューション(サーバー製品?)をMicrosoftが用意してくれているが、いずれも有償&見たこともないので詳細は不明。(System Center 2012、Windows Intune、Self Service Portal)
- Windowsストアに登録するためには、個人で4800円、法人で9800円の年間登録料がかかる
- サイドローディングするなら上記の登録料は要らないと思いきや、上記登録料を払わないと配布パッケージすら作れない
以下蛇足。
上記のソフトウェア上の仕様は、コンシューマ向けソフトウェア開発の潮流に従っているし、正しいと思います。でも、ビジネス的に考えたとき、これは全然魅力的じゃないと思う。
ビジネスユースで成功しているWindowsが、今更AndroidとiOSに対抗して何の意味があるのでしょう。上記の仕様は、業務アプリケーション(LOB)では足かせ以外の何者でもありません。
というか、コンシューマー向けOSとして考えたときも、納得がいかない。AndroidとiOSに出来なくてWindowsに出来ることはごまんとあります。
たとえば、キーボードとマウスがあるのがWindowsの良いところでしょう。AndroidとiOSがあれば何でも出来ると思われがちですが、あなたは年賀状をAndroidで作成しますか?長い文章をスマホやタブレットで打とうと思いますか?「Windowsにはキーボードとマウスがある」それは当たり前過ぎる事実なのですが、猫も杓子もタブレット、スマホ、な現代では意外な盲点では無いでしょうか。
言い換えると、スマホやタブレット、つまりAndroidやiOSはコンテンツを消費するのに適したデバイスなんです。対して、キーボードとマウスを備えたWindowsは、コンテンツを創造するのに適したデバイスなんです。で、コンテンツを創造するというニーズがあるからこそ、今、またUltrabookや、タブレットとしてもPCとしても使えるデバイスなんかが流行始めているんではないでしょうか?
・・・ということを常々思っていたのだが、ほぼ同じ事がPC Watchで連載している「山田祥平のRe:config.sys」に書いてあった。
まあ、かといって私も、こうやってブログを更新するのに8コアで8GBのメモリを積んだデスクトップを立ち上げるのも確かにバカバカしいとは思います。Ultrabookの一つでも欲しくなってくるが、金が無いので我慢することとしましょう。