アラーム&クロックアプリケーションは、バックグラウンドタスクではなくスケジュールトースト通知を使用していました。ここ
10秒でトーストをスケジュールするためのサンプルコードです。
namespace UWPApp
{
/// <summary>
/// An empty page that can be used on its own or navigated to within a Frame.
/// </summary>
public sealed partial class MainPage : Page
{
private Random random = new Random((int)DateTime.Now.Ticks);
const string TOAST = @"
<toast>
<visual>
<binding template=""ToastGeneric"">
<text>Sample</text>
<text>This is a simple toast notification example</text>
<image placement = ""AppLogoOverride"" src=""oneAlarm.png"" />
</binding>
</visual>
<actions>
<action content = ""check"" arguments=""check"" imageUri=""check.png"" />
<action content = ""cancel"" arguments=""cancel""/>
</actions>
<audio src =""ms-winsoundevent:Notification.Reminder""/>
</toast>";
public MainPage()
{
this.InitializeComponent();
}
private void Button_Click(object sender, RoutedEventArgs e)
{
var when = DateTime.Now.AddSeconds(10);
var offset = new DateTimeOffset(when);
Windows.Data.Xml.Dom.XmlDocument xml = new Windows.Data.Xml.Dom.XmlDocument();
xml.LoadXml(TOAST);
ScheduledToastNotification toast = new ScheduledToastNotification(xml, offset);
toast.Id = random.Next(1, 100000000).ToString();
ToastNotificationManager.CreateToastNotifier().AddToSchedule(toast);
}
}
}
アラームとリマインダーが異なります。それらのために 'TimeTrigger'は必要ありません。 http://stackoverflow.com/questions/31740884/can-i-create-an-alarm-app-for-window-universal-app –
私はGithubのサンプルコードを調べ、Alarmと他のトーストが表示されていることがわかりましたボタンのクリックに基づいています。 Foregroundアプリが動作していなくても動作するタイマーに、これをどのようにアタッチできるのか分かりますか?私は、スケジュールされた時間にどのように実行されるかはわかりません。それはJeffreyが指摘したように "ToastNotificationManager.CreateToastNotifier()。AddToSchedule"によって行われますか? Github Windows 10サンプルのコードは? –
このような方法でコードブロックをスケジュール実行する方法については、ユーザーが選択した時間に基づいて15分未満である可能性があります。 –