今回から、ストアアプリでバックグラウンドタスクを作成する方法について見ていきます。
説明が長くなるため、何回かに分けて説明を指定行きます。
バックグラウンドタスクを作成することで、ストアアプリが起動していないときにライブタイルやトースト通知等の処理を実行することができるようになります。
バックグラウンドタスクは特定のトリガーによって起動します。好き勝手に動作させることができるわけではないので注意が必要です。
代表的なトリガーには以下のものがあります。
| トリガー | 説明 |
| InternetAvailable | インターネットが利用可能になったタイミングで起動するトリガー |
| NetworkStateChange | ネットワークの変更が行われたタイミングで起動するトリガー |
| OnlineIdConnectedStateChange | アカウントに関連付けられたIDが変更になったタイミングで起動するトリガー |
| SmsReceived | SMSメッセージを受信したタイミングで起動するトリガー |
| TimeZoneChange | タイムゾーンが変更されたタイミングで起動するトリガー |
上記以外にもロック画面に表示するためのトリガーもあります。機会があれば紹介したいと思います。
最初に、新規のストアアプリプロジェクトを作成します。
次に、バックグラウンドタスク用のプロジェクトを新規に作成して追加します。
新しいプロジェクトの追加で「Windows ランタイムコンポーネント」を選択します。
この例では「BackgroundTask」という名前で作成しています。
次に、追加したBackgroundTaskプロジェクトを、元のプロジェクトに追加をします。
ソリューションエクスプローラーで元のプロジェクトを右クリック後、「参照の追加」をクリックします。
追加するプロジェクト「BackgroundTask」にチェックを付けて[OK]ボタンをクリックします。
次に、新しく追加したプロジェクト(BackgroundTask)にあるClass1を開き、 IBackroundTaskインターフェースを実装します。このようにすることで、Class1はバックグラウンドタスクを処理することができるようになります。
C#の例
using Windows.ApplicationModel.Background;
namespace BackgroundTask
{
public sealed class Class1 : IBackgroundTask
{
public void Run(IBackgroundTaskInstance taskInstance)
{
throw new NotImplementedException();
}
}
}
VBの例
Imports Windows.ApplicationModel.Background
Public NotInheritable Class Class1
Implements IBackgroundTask
Public Sub Run(taskInstance As IBackgroundTaskInstance) Implements IBackgroundTask.Run
End Sub
End Class
バックグラウンド処理の中身は次回作成することとします。
Please follow and like us:




コメント