酢ろぐ!

カレーが嫌いなスマートフォンアプリプログラマのブログ。

Windows Phoneで使えるランチャー(LauncherとChooser)の一覧をまとめてみました

Windows Phone Advent Calendar "ひとり" 2011」第22日目です。 (遅延実行中です)

Windows Phone プラットフォームとして一貫したユーザーエクスペリエンスを提供する為に、Windows Phone端末内のデータの取得および設定に関しては、Launcher(ランチャー)を使用する事が推奨されています。

今日は、過去に書いたランチャーで出来ることをまとめてみました。

-http://ch3cooh.jp/windows-phone/wp-launcher-chooser/disp-bingmaps-directions-wp/ -http://ch3cooh.jp/windows-phone/wp-launcher-chooser/disp-bingmap-wp/ -http://ch3cooh.jp/windows-phone/wp-launcher-chooser/show-application-detail-wp/ -http://ch3cooh.jp/windows-phone/wp-launcher-chooser/startup-marketplace-wp/ -http://ch3cooh.jp/windows-phone/wp-launcher-chooser/show-marketplace-review-wp/ -http://ch3cooh.jp/windows-phone/wp-launcher-chooser/search-marketplace-wp/ -http://ch3cooh.jp/windows-phone/wp-launcher-chooser/play-media-launcher-wp/ -http://ch3cooh.jp/windows-phone/wp-launcher-chooser/call-telephone-wp/ -Windows PhoneでShareStatusTaskを使ってステータスを共有する - 酢ろぐ! -http://ch3cooh.jp/windows-phone/wp-launcher-chooser/share-status-task-wp/ -http://ch3cooh.jp/windows-phone/wp-launcher-chooser/show-webpage-wp/

** SearchTaskを使ってウェブ検索をおこなう

今まで紹介出来ていなかったランチャーに関しては下記に追加しています。

SearchTaskは、ウェブ検索を行うランチャーです。 SearchTaskクラスのShowメソッドを実行すると、bingアプリを起動し検索結果を表示します。

f:id:ch3cooh393:20160115150355p:plain

検索を行うにはSearchQueryプロパティに検索キーワードを入力しておく必要があります。SearchQueryプロパティを入力せずにShowメソッドを実行すると、検索結果にはニュースが表示されました。

|cs| using System; using System.Windows; using Microsoft.Phone.Controls; using Microsoft.Phone.Tasks;

namespace SearchTaskTest { public partial class MainPage : PhoneApplicationPage { // コンストラクター public MainPage() { InitializeComponent(); }

    private void button1_Click(object sender, RoutedEventArgs e) {
        var task = new SearchTask();
        try {
            task.SearchQuery = "酢ろぐ";
            task.Show();
        } catch (InvalidOperationException ex) {
            MessageBox.Show(ex.Message);
        }
    }
}

} ||<

** ConnectionSettingsTaskを使ってネットワークの接続設定をおこなう

ConnectionSettingsTaskは、ネットワークの接続設定を行うランチャーです。 ConnectionSettingsTaskクラスのShowメソッドを実行すると、ConnectionSettingsTypeプロパティの設定値に応じて、それぞれ設定アプリでのネットワーク接続設定ダイアログを表示します。

f:id:ch3cooh393:20160115150514p:plain

ConnectionSettingsTypeプロパティに設定可能な値を列挙してみました。

|設定値|説明| |WiFi|Wi-Fi 設定| |Bluetooth|Bluetooth 設定| |Cellular|携帯ネットワーク設定| |AirplaneMode|フライト モード設定|

ConnectionSettingsTypeプロパティにConnectionSettingsType.WiFiを設定したのちに、Showメソッドを実行しています。

|cs| using System; using System.Windows; using Microsoft.Phone.Controls; using Microsoft.Phone.Tasks;

namespace ConnectionSettingsTaskTest { public partial class MainPage : PhoneApplicationPage { // コンストラクター public MainPage() { InitializeComponent(); }

    private void button1_Click(object sender, RoutedEventArgs e) {
        var task = new ConnectionSettingsTask();
        try {
            // Wi-Fi設定ダイアログを表示する
            task.ConnectionSettingsType = ConnectionSettingsType.WiFi;
            task.Show();
        } catch (InvalidOperationException ex) {
            MessageBox.Show(ex.Message);
        }
    }
}

} ||<

** EmailComposeTaskを使ってEメールを送信する

EmailComposeTaskは、Eメールを送信するランチャーです。 EmailComposeTaskクラスのShowメソッドを実行すると、メールアプリを起動しメール送信画面を表示します。

ただし、Windows Phone EmulatorでEmailComposeTaskを実行すると例外が発生する可能性があります。テストは実機上で行う必要があります。

ToプロパティやSubjectプロパティにテキストを設定しておくと、あらかじめ起動されるメール送信画面に情報が入力された状態で表示する事が出来ます。

f:id:ch3cooh393:20160115150428p:plain

|cs| using System; using System.Windows; using Microsoft.Phone.Controls; using Microsoft.Phone.Tasks;

namespace EmailComposeTaskTest { public partial class MainPage : PhoneApplicationPage { // コンストラクター public MainPage() { InitializeComponent(); }

    private void button1_Click(object sender, RoutedEventArgs e) {
        var task = new EmailComposeTask();
        try {
            // Toプロパティには宛先を設定します
            task.To = "ch3cooh393@gmail.com";
            // Subjectプロパティにはメッセージのタイトルを設定します
            task.Subject = "Hello Windows Phone";
            // Bodyプロパティにはメッセージの本文を設定します
            task.Body = "Message";

            task.Show();
        } catch (InvalidOperationException ex) {
            MessageBox.Show(ex.Message);
        }
    }

||<

** SmsComposeTaskを使ってSMSを送信する

SmsComposeTaskは、SMSを送信するランチャーです。 SmsComposeTaskクラスのShowメソッドを実行すると、メールアプリを起動しメッセージ送信画面を表示します。

f:id:ch3cooh393:20160115150452j:plain

ただし、Windows Phone EmulatorでSmsComposeTaskを実行しSMSを送信する部分まで実行出来たかのように見えますが、これは不正なダミーのSIMカードが使用されているため実際にメッセージは送信出来ておりません。メッセージの送信を含めてのテストを行う場合、実機上で行う必要があります。

ToプロパティやBodyプロパティにテキストを設定しておくと、あらかじめ起動されるメッセージ送信画面に情報が入力された状態で表示する事が出来ます。

|cs| using System; using System.Windows; using Microsoft.Phone.Controls; using Microsoft.Phone.Tasks;

namespace SmsComposeTaskTest { public partial class MainPage : PhoneApplicationPage { // コンストラクター public MainPage() { InitializeComponent(); }

    private void button1_Click(object sender, RoutedEventArgs e) {
        var task = new SmsComposeTask();
        try {
            // Toプロパティには宛先を設定します
            task.To = "123-456-789";
            // Bodyプロパティにはメッセージの本文を設定します
            task.Body = "Message";

            task.Show();
        } catch (InvalidOperationException ex) {
            MessageBox.Show(ex.Message);
        }
    }
}

} ||<