スマートフォン向けソリューションをPCで利用する

現在、あるサービスの評価を行っている。そのサービスはその会社のクラウドにあるサーバーにアクセスするクライアント - サーバー型ソリューションである。このライセンス形態がスマホ向けなら無料、他のプラットフォームの場合は有料(数カ月単位に支払い)となっているため、スマホを経由して目的のプラットフォームへ流すことを検討した。
iOSAndroidWindows Phone 7のどれにするか悩んだが、このサービスの評価をPC上のあるソフトで使いたかったため、同じPC上で動作可能で無償で開発できるWindows Phone 7を選択した(iOSが一番開発に慣れているが、MacとPCで2台稼働体制になってしまうし、Androidはオーバーヘッドがあり過ぎるので敬遠)。

Windows Phone 7の開発は初めてだったし、幾つかの些細なぼやきはあったものの、開発はなかなか面白かった。

<開発>
・メインのソフトとWindows Phone 7 EmulatorをHTTP通信で情報のやり取りを行う形をとり、メインソフトが間接的にそのサービスが利用できるようにする。
ー>メインソフト側では、Webサーバーを稼働させておき、通信をレシーブしたらイベント起動。POSTでパラメータを取得して目的の処理を行う。
ー>Windows Phone 7では、そのサービス利用するサーバーに対してまず通信を行い、任意の結果を得た後で、適切な文字コードに変換し、HTTP通信(POST)を使ってメインソフトへ情報を送りつける。

(参考)
・HTTP通信
http://d.hatena.ne.jp/bs-wp7/20110910/1315626559
http://studentguru.gr/b/vangos/archive/2011/05/17/an-http-post-request-client-for-windows-phone-7.aspx

===============
<小さなぼやき>
いささかWindows Phone 7 SDKインストール時に不思議だったのが、Visual Studio 2010 Professionalがインストールされているにも関わらず、Windows Phone 7 SDKはそんなことはお構いなしにVisual Studio 2010 Expressをインストールしてしまったことである。あんな巨大なソフトが2つも入っているのはちょっといただけない。無償開発は嬉しいが、そこはMicrosoftさんフレキシブルに対応して欲しかったところである。
あとVisual Studio 2010 Professionalを起動したままで、Windows Phone 7 SDKをインストールするとエラーでハングし、それ以降の再実行は同じ言語版だとできなかった。なので仕方なく英語版を入れている。
またWindows Phone 7用のソリューションファイル(.sln)をダブルクリックしても、Visual Studio 2010 Expressが起動しないので、わざわざショートカットを作成して対応している。
Windows PhoneってSiriみたいな機能も付いてるんですね、知らなかったです。