Phone開発者としてスマートフォンに対応したアプリを作成する魅力は、スマートフォン独自の機能を利用したり、端末にあらかじめ搭載され、プログラムから利用可能なセンサーを利用したりすることだろう。センサー、電子コンパス、照度センサーなどのセンサー・デバイスが搭載されている。この中でアプリから利用できるセンサーは、現在のところ位置情報と加速度センサーの2つだ。表1はセンサーで計測可能な情報と、利用する場合に用いるクラスの一覧だ。Phoneアプリから利用できるセンサーセンサー類は、それ単品では使っても単に数字を取得できるだけだが、アプリやセンサー同士を組み合わせるとさまざまな利用方法が思い浮かぶ。ある加速度センサーの利用例は、端末の向き(横長/縦長)に応じた表示の切り替えだが、さらにロケーションや地図アプリと組み合わせれば、ウォーキングの履歴管理などにも利用できる。●電話機能へのアクセススマートフォンとはいえ、電話機なのだから、アドレス帳から連絡先を検索したり、実際に電話をかけたり、メールやショート・メッセージを送ったりといった電話機能をアプリから制御したいことは多々あるだろう。OSの機能「Chooser」(=ChooserBaseクラス(Microsoft.Phone.Tasks名前空間)を継承したすべての派生クラス)を通して電話機能を呼び出すことになる。Microsoft.Phone.Task名前空間に含まれるChooserクラスを利用すると、カメラを起動したり(CameraCaptureTaskクラスを利用)、アドレス帳を起動してEmailアドレスを取得したりできる(EmailAddressChooserTaskクラスを利用)。詳しくは、MSDNの「Microsoft.Phone.Tasks名前空間」の項を参照してほしい。Phoneを搭載したスマートフォンは発売されていない。Amazon.comなどの海外サイトを通じて個人輸入すれば端末の入手は可能だが、日本国内で利用する場合は次のような注意点があるので注意していただきたい。7.1」になると、うわさされている。7」ベース)で解決される予定だ。Phoneは多国語対応が可能なOSであるが、日本国内で販売していないこともあり、現在のバージョン7では日本語のメニューが提供されていない(図6)。Twitterアプリの例(図4)のとおり、アプリ上で日本語の表示自体は問題なく行えるし、メトロUIで採用するタイルでも特に問題なく日本語が使用できる。Phoneが(文字が)マルチバイト圏の国でまだ販売されていないため、日本語の入力に欠かせない日本語IMEが提供されていない。Mobile(以下、Marketplace)で公開されている。Androidと違い、エンド・ユーザー自身が任意のアプリでIMEを置き換えることはできないため、正式な対応は次期「コード名:Mango」(詳細後述)を待つ必要がある。Phoneの日本語入力は、アプリごとにIMEを組み込む形で実装されている。多くはiseebi氏のコードを基に、インターネット上のソーシャルIMEサービスを利用して文字の変換を行うため、日本語の入力にはネットワーク環境が必要だ。現在Marketplaceで公開されている日本語入力アプリを下記に示す。Phoneの次期バージョン「7.1」(コード名:Mango)が、MIX11の2日目のキーノートで発表された。この発表の中で判明した新機能を表2に示す。MIX11のキーノートの様子は、次のリンク先から参照可能だ。Keynotesまた、Mangoの新機能に関しては、4月25日に行われたMIX11の報告会の発表資料がよくまとまっている。今後、Mangoに対応した開発者ツールが5月中旬にリリースされる*1ほか、Marketplaceからアプリを購入できる国として「日本」が追加される予定だ。Conferenceでは、Mangoに対応した開発者ツールのベータ版がリリースされた。4日本語版との間に課題があるということである。現行版(7.0)の環境を壊したくない場合は、仮想PC上に作成するなど注意が必要だ。Phone開発について紹介していく。7.1(コード名:「Mango」)についてより詳しい情報が発表されたため、それに併せて更新しました。7で追加された新機能の中から、「数値リテラル構文の改善」と「ローカル関数」を紹介する。TranslatorはPowerPoint用のアドイン。