Metroスタイルアプリ

/ Windows 8

しばし間が空いてしまいましたが、巷ではMicrosoft謹製のWindows 8搭載タブレット「Surface」やら、Windows Phone 8のお披露目やらで盛り上がってきているようです。
Surface、特にPro版のほうは単なるタブレットPCにとどまらず、従来のモバイルノートPCの代わりにもなってくれそうで実にそそられますが、発売はまだしばらく先ですし、そもそも日本で発売してくれるのかが未定なようなので、ぬか喜びで終わらないことを祈るばかり。

そんなこんなで、Release Previewもリリースされて、徐々に最終型が見えてきたWindows 8なわけですが、我々も出遅れてはいかんということで、4月のWindows Developer Dayに引き続き、Windows Phoneアプリ開発者向けのMetroスタイルアプリ開発の特別セミナーに参加。
一足早くストアへの出品が可能になるというApplication Excellence Lab (AEL)への申し込みも済ませ、現在評価用のMetroスタイルアプリを作成しているところです。
ぶっちゃけ、開発にほとんど時間が割けず、テンプレートをベースにやっつけ気味にこしらえただけなので、このままストア公開するのは憚られるわけですが、AELがどのような条件を出してくるのか不明なので、もしかすると強制公開させられてしまうのかもしれず。
ラボ訪問は来週なので、近日中に結果報告できると思います。

実際にVisual Studio 2012(RC版)と付属のBlendを使って開発しているわけですが、さすがにフルスペックのWindowsだけあって、Windows Phoneアプリの開発に必要な情報と比べると格段にボリュームが多く、おまけに現状はほとんど英語情報しか掲載されていないこともあって、なかなかにヘビー。
さらに、Metroスタイルアプリは何パターンもあるビュー(縦/横/スナップといった表示モード)や、複数解像度への対応が必須となっているため、UI作成にまつわる作業量がかなり増加しています。
Windows Phoneアプリはさほど凝らなければ個人が趣味レベルで開発できる世界だったりするのですが、Windows 8のMetroスタイルアプリはかなり気合を入れて取り組まないとストアリリースまでこぎつけるのは難しいのでは、といった印象。
まだまともに触り始めてから一週間ほどなので、いずれ慣れてくるのかもしれませんが、開発周りに関しては今後細かい部分が変わる可能性もありそうなので、あまり深入りせずにどっしり構えていたほうがよさげ。
カーネルの共通化を図るといわれるWindows Phone 8のアプリ開発に関しても具体的な情報がまだ出てきていないですし、なんだかんだいってMetroなアプリはまだまだこれから。じっくり取り組んでいきたいと思います。


Windows 8 Consumer Preview

/ Windows 8

遅ればせながら、Win8 CPを導入してみました。
空いているPCがなかったため延びのびになっていたのですが、次期主力開発機とすべく最新のIvy CPUを積んだマシンを組んだので、これに投入。
UEFIマザーとSSDの組み合わせで、起動は激速、VSをはじめとするアプリの挙動も至極快適で、Win8自体もCP版ながら一見して概ね安定している様子。

ひとまず既存PCとキーボード、マウスの共有化をするため、Mouse without Borders (以下、MWB) というツールをセットアップ。
今まではInput Directorを使っていたのですが、一応Microsoft製で比較的新しめのMWBを試してみようと思い立った次第。
設定は簡単で、ホスト側で表示されたパスワードをスレーブ側に登録するだけ。
その他は特別な設定をすることなく、一度設定してしまえば起動時から有効になってくれるようです。

というわけで、無事1セットのキーボード、マウスでWin7機とWin8機が操作できるようになったと思い、Win8機に付けていたUSBマウスを外したところ、マウスカーソルが消失する問題が発生。
どうやらWin8固有の問題らしいのですが、MWBのプライベートビルドの最新版(2.1.2.0408)を入れてみたところ、「Draw mouse cursor」という設定項目を発見。
これで解決かと思いきや、どうやら自前で強引にカーソル描画しているようで、やけに大きなカーソル画像になっているわ、クリックしている状態だとカーソルが消えてしまうわ、と何とも微妙な実装。
仕方ないので、本件の解決は断念、ひとまずはダミーのマウスを付けっぱなしで運用していくことに相成りました。
Win8の次期プレビュー版(Release Preview)で修正されることを期待しませう。

さて、2つめの問題。
Win8 CP導入後、VS11ベータを入れたり、VS2010+WP SDKを入れたり、Windows Update経由でいくつかのパッチが勝手に入ったりしたわけですが、ふと気がつくと日本語が入力できない状態に…
IMEインジケータも表示されないし、コンパネの言語設定をあれこれいじってみても復活せず、キーボードドライバを入れなおしてみてもダメ。
仕方ないので、Google IMEを入れてみたところ、何とか日本語入力はできるようになったものの、相変わらずインジケータが表示されず(というよりも、Windowsからは正規のIMEとして認識されていない様子)、設定ダイアログが出せないので「かな入力」に変更できず。
こりゃ困った、ということでググッてみると、コマンドラインから設定ダイアログを出す方法が見つかり、何とか最低限の操作環境の確保に成功した次第。

というわけで、肝心なWindows8の印象はというと、Metro関連のくだりがなければ、意外と地味目なマイナーバージョンアップといった感じ。
開発者としては従来通りデスクトップを主に利用することになると思うのですが、スタートメニューがなくなっている点以外は特に変化はないので、移行自体は全く問題なさげ。
Metroスタイルアプリの普及は今後の展開次第ですが、1零細デベロッパーとしてはMicrosoftオフィシャルかつミニマムスタート可能なアプリ販路が用意されるというだけでも希望が広がります。
あとは魅力的なハードが出てくるかどうかがカギ、といったところでしょうか。
いずれにしても、正式リリースに向けて盛り上がりを期待したいと思います。