Hatena::ブログ(Diary)

酢ろぐ(ch3cooh.jp) RSSフィード


CH3COOH(酢酸)の実験室
Baseball Japan / ○○時計 for WP7 / for WM
Windows Phone 7 開発 Tips

2010-08-11

Windows Phone 7 beta版のエミュレータでLaunchersとChoosersを試してみた

Microsoft.Phone.Tasks名前空間について調べていたら、日本語では id:shiba-yan のものしか見つけられなったので、カッなって怒涛のごとくエントリした。先週末からの体調不良が祟って頭痛がひどくなっているが、後悔はしていない。

f:id:ch3cooh393:20100811231947p:image

Windows Mobile 6.xは、アドレス帳から特定の個人を選択するようなダイアログは用意されていませんでした。それに比べて、Windows Phone 7ではアドレス帳を扱うのが随分と簡単になりました。

Microsoft.Phone.Tasks名前空間に存在しているOSの標準アプリケーションを呼び出すLauncherと、ファイルを開くダイアログのような形で利用できるChooserを使う事によって、アドレス帳だけではなく携帯電話に関連する機能へのアクセスが簡単に実現することが出来ます。他にも電話を掛けるLauncherや、カメラを撮影したり電話番号を選ぶChooserが用意されています。

Beta版のシミュレータを使って動作確認をしましたが、キチンと動かない場合があります。参照としてMSDNライブラリURLを貼っていますが、Windows Phone 7のβまたはテクニカルプレビューの情報となっています。新しいバージョンのリリース時に仕様変更されてしまう可能性があります。ご了承下さい。

試してみたLaunchersとChoosersの一覧

CameraCaptureTask を使ってWindows Phone 7でカメラを撮影する

カメラを撮影する事が出来ます。まぁ、Windows Mobileで言うところのCameraCaptureDialog。

  private void btnCameraCaptureTask_Click(object sender, RoutedEventArgs e)
  {
      var task = new Microsoft.Phone.Tasks.CameraCaptureTask();
      task.Show();
  }

動かしてみました。

f:id:ch3cooh393:20100811232127p:image

EmailAddressChooserTask を使ってWindows Phone 7でアドレス帳から人を選ぶ

アドレス帳から人を選ぶ事が出来ます。

  private void btnEmailAddressChooserTask_Click(object sender, RoutedEventArgs e)
  {
      var task = new Microsoft.Phone.Tasks.EmailAddressChooserTask();
      task.Show();
  }

動かしてみた。

f:id:ch3cooh393:20100812010547p:image

EmailComposeTask を使ってWindows Phone 7でメールを送信する

メールを送信する事が出来ます。

  private void btnEmailComposeTask_Click(object sender, RoutedEventArgs e)
  {
      var task = new Microsoft.Phone.Tasks.EmailComposeTask()
      {
          To = "info@ch3cooh.jp",
          Subject = "ここにタイトルを書くよ",
          Body = "ここに本文を書きまする",
          Cc = "info2@ch3cooh.jp"
      };
      task.Show();
  }

ベータエミュレータだとメールアカウントが設定出来ないので動いているところを見せられず。これは実機動作確認待ちかなぁ。

MarketplaceLauncher を使ってWindows Phone 7でMarketplaceのコンテンツを操作する

Marketplaceのコンテンツを操作する事が出来ます。

        private void btnMarketplaceLauncher_Click(object sender, RoutedEventArgs e)
        {
            Microsoft.Phone.Tasks.MarketplaceLauncher.Show(
                Microsoft.Phone.Tasks.MarketplaceContent.Music,
                Microsoft.Phone.Tasks.MarketplaceOperation.Search,
                "john");
        }

動かしてみた。適当なスペルでいくつか検索してみたけど何も引っかからず。

f:id:ch3cooh393:20100812010748p:image

MediaPlayerLauncher を使ってWindows Phone 7でMediaPlayerを操作する

MediaPlayerを操作する事が出来ます。

ちなみにサンプルのWMVは、MSのサイト(http://support.microsoft.com/kb/316992/ja)から拝借。

  private void btnMediaPlayerLauncher_Click(object sender, RoutedEventArgs e)
  {
      var task = new Microsoft.Phone.Tasks.MediaPlayerLauncher()
      {
          Media = new Uri(@"http://support.microsoft.com/support/mediaplayer/wmptest/samples/new/mediaexample.wmv"),
          Controls = Microsoft.Phone.Tasks.MediaPlaybackControls.All
      };
      task.Show();
  }

動かしてみました。動画とコントロール部分が何故か同時に表示できない現象が発生していたけど、なんとか表示されているみたいです。(ノートPCだからオーバーレイがちゃんと映ってないっぽい?)

f:id:ch3cooh393:20100811235551p:image

f:id:ch3cooh393:20100811235616p:image

PhoneCallTask を使ってWindows Phone 7で電話を掛ける

電話を掛ける事が出来ます。Windows Mobile で言うところのMicrosoft.WindowsMobile.Telephonyクラスですね。

  private void btnPhoneCallTask_Click(object sender, RoutedEventArgs e)
  {
      var task = new Microsoft.Phone.Tasks.PhoneCallTask()
      {
          DisplayName = "酢酸に電話しちゃうよ",
          PhoneNumber = "123 456 789"
      };
      task.Show();
  }

動かしてみました。

f:id:ch3cooh393:20100812011057p:image

PhoneNumberChooserTask を使ってWindows Phone 7で電話番号を選択する

電話番号を選択する事が出来ます。

  private void btnPhoneNumberChooserTask_Click(object sender, RoutedEventArgs e)
  {
      var task = new Microsoft.Phone.Tasks.PhoneNumberChooserTask();
      task.Show();
  }

動かしてみました。

f:id:ch3cooh393:20100812011134p:image

PhotoChooserTask を使ってWindows Phone 7で画像を選択する

画像を選択する事が出来ます。Windows Mobile で言うところのSelectPictureDialogですね。

  private void btnPhotoChooserTask_Click(object sender, RoutedEventArgs e)
  {
      var task = new Microsoft.Phone.Tasks.PhotoChooserTask() 
      { 
          ShowCamera = true,
          PixelHeight = 640,
          PixelWidth = 480 
      };
      task.Show();
  }

動かしてみた。

f:id:ch3cooh393:20100812011201p:image

SaveEmailAddressTask を使ってWindows Phone 7でメールアドレスを保存する

メールアドレスを保存する事が出来ます。

  private void btnSaveEmailAddressTask_Click(object sender, RoutedEventArgs e)
  {
      var task = new Microsoft.Phone.Tasks.SaveEmailAddressTask() { Email = "info@ch3cooh.jp" };
      task.Show();
  }

動かしてみた。

f:id:ch3cooh393:20100812011235p:image

SavePhoneNumberTask を使ってWindows Phone 7で電話番号を保存する

電話番号を保存する事が出来ます。

  private void btnSavePhoneNumberTask_Click(object sender, RoutedEventArgs e)
  {
      var task = new Microsoft.Phone.Tasks.SavePhoneNumberTask() { PhoneNumber = "1234567890" };
      task.Show();
  }

動かしてみた。

f:id:ch3cooh393:20100812011346p:image

SearchTask を使ってWindows Phone 7でウェブ検索をする

ウェブ検索をする事が出来ます。

  private void btnSearchTask_Click(object sender, RoutedEventArgs e)
  {
      var task = new Microsoft.Phone.Tasks.SearchTask() { SearchQuery = "酢酸" };
      task.Show();
  }

動かしてみました。

f:id:ch3cooh393:20100811232506p:image

WebBrowserTask を使ってWindows Phone 7でWebBrowserを立ち上げる

WebBrowserを立ち上げる事が出来ます。

  private void btnWebBrowserTask_Click(object sender, RoutedEventArgs e)
  {
      var task = new Microsoft.Phone.Tasks.WebBrowserTask() { URL = "http://ch3cooh.jp/" };
      task.Show();
  }

動かしてみました。

f:id:ch3cooh393:20100811232827p:image