מדריך Windows Phone – שימוש במנגנון התרעות
גרסת "מנגו" של מערכת ההפעלה Windows Phone הוסיפה מנגנון של התרעות. מנגנון זה מאפשר למפתחי אפליקציות להפעיל התרעות אשר מותאמות לאפליקציה, בזמן המבוקש.
ישנם שני סוגי התרעות שניתן ליצור, לכל אחת יתרונות וחסרונות משלה:
התרעה מסוג Alarm
בהתרעה זו מופיע שם האפליקציה שיצרה אותה, הטקסט הקבוע "Alarm", וכן תוכן ההתרעה. בנוסף, ניתן לקבוע צליל להתרעה הנקבע ע"י מפתח האפליקציה. כאשר ההתרעה תופיע המשתמש יוכל לבטל אותה (dismiss) או לדחות אותה (snooze), או ללחוץ עליה מה שיגרום לפתיחת האפליקציה שיצרה אותה.
להלן תמונה לדוגמא של התרעה מסוג Alarm:
התרעה מסוג Reminder
בהתרעה זו מופיע שם האפליקציה שיצרה אותה, כותרת לבחירת המשתמש ותוכן ההתרעה. להתרעה מסוג זה תמיד יש את אותו צליל קבוע במערכת. גם התרעות אלו ניתנות לביטול או דחייה. בנוסף לחיצה על ההתרעה תפתח את האפליקציה אבל במיקום מסוים ולא בהכרח במסך הפתיחה של האפליקציה.
להלן דוגמא של התרעה מסוג Reminder:
יצירת התרעה מסוג Alarm
לשם יצירת התרעה מסוג Alarm יש ליצור מופע ממחלקת Alarm (שנמצא ב namespace בשם Microsoft.Phone.Scheduler), לקבוע את השדות שלו עם המידע הנדרש כמו תוכן ההתרעה ומתי יש להפעיל אותה, ולבסוף יש להכניס אותה למאגר ההתרעות ע"י שימוש בפונקציה ScheduledActionService.Add.
להלן דוגמת קוד שעושה זאת:
private void Alarm_Button_Click(object sender, RoutedEventArgs e)
{
Alarm alarm = new Alarm("My Alarm")
{
Content = "my alarm content",
RecurrenceType = RecurrenceInterval.Daily,
BeginTime = DateTime.Now + TimeSpan.FromSeconds(5)
};
ScheduledActionService.Add(alarm);
}
יצירת התרעה מסוג Reminder
לשם יצירת התרעה מסוג Reminder יש ליצור מופע ממחלקת Reminder, לקבוע את השדות שלו עם המידע הדרוש ולהכניס אותו למאגר ההתרעות באותו אופן כמו ב Alarm.
להלן דוגמת קוד שמדגימה שימוש ב Reminder:
private void Reminder_Button_Click(object sender, RoutedEventArgs e)
{
Reminder reminder = new Reminder("Demo Reminder")
{
Title = "my reminder title",
Content = "my reminder content",
RecurrenceType = RecurrenceInterval.None,
BeginTime = DateTime.Now + TimeSpan.FromSeconds(5),
NavigationUri = new Uri("/MainPAge.xaml?myparam=abc", UriKind.Relative)
};
ScheduledActionService.Add(reminder);
}
תגובות בפייסבוק