我想创建一个闹钟应用程序。
我找到了在后台操作计时器的方法。但是没有找到控制显示器功率的API(我希望在电源关闭时打开显示器的电源)。
Windows 10(Windows Universal App)是否有足够的API来创建该应用程序?
答案 0 :(得分:16)
Windows-universal-samples最近更新了一些新的RTM样本,包括这一样本 - Notifications。
由于警报也是一种通知,它现在已在通用Windows平台的新Toast通知框架内构建。
从上面的通知链接下载源代码后,使用Visual Studio 2015 RTM运行它,然后在加载应用程序后,转到
吐司>场景>方案:警报
您将看到一个功能齐全的闹钟应用程序(以及提醒和许多其他样本)。
让我们谈谈代码。
基本上,与Windows Phone Silverlight不同,您现在可以通过指定xml有效负载来自定义警报弹出窗口(确保scenario
设置为alarm
)
<toast launch='args' scenario='alarm'>
<visual>
<binding template='ToastGeneric'>
<text>Alarm</text>
<text>Get up now!!</text>
</binding>
</visual>
<actions>
<action arguments = 'snooze'
content = 'snooze' />
<action arguments = 'dismiss'
content = 'dismiss' />
</actions>
</toast>
然后创建一个加载上述xml字符串
的XmlDocumentvar xmlString = @"//copy above xml here//";
var doc = new Windows.Data.Xml.Dom.XmlDocument();
doc.LoadXml(xmlString);
然后创建ToastNotification
并使用ToastNotificationManager
-
var toast = new ToastNotification(doc);
ToastNotificationManager.CreateToastNotifier().Show(toast);
微软最近回复了one of my API requests,我在这里发布了内容,所以每个人都知道添加了哪些API,哪些仍然未完成。
已完成的工作
一些参考
Toast Notification and Action Center Overview for Windows 10
Quickstart: Sending a local toast notification and handling activations from it (Windows 10)
我们(MSFT)知道我们失踪并希望在不久的将来支持
本机平台支持警报/提醒重复事件(解决方法 - 目前只能由应用程序手动定期唤醒并提前重新安排一堆警报/提醒);
原生平台支持从音乐库中选择一首歌曲作为闹铃/提醒的铃声(解决方法 - 这可以通过从音乐库中读取和复制文件,然后使用保存/修改来完成应用包中的文件版本或应用数据作为铃声(吐司通知通过指向appx中的文件或xml有效负载中的appdata支持自定义声音))。
答案 1 :(得分:2)
AlarmApplicationManager
可用于创建闹钟应用。它提供了安排Toast通知的功能。
var scheduledToast = new ScheduledToastNotification(content, DateTime.Now.AddMinutes(5));
toastNotifier.AddToSchedule(scheduledToast);
创建吐司模板时也可以设置音频源,但只能从Windows提供的一组预定义声音中设置。
有关详细信息,请参阅AlarmApplicationManager和Building alarm app。
答案 2 :(得分:2)
GitHub上有许多Win 10 Universal Samples可能很有用。但是,我没有看到任何与警报直接相关的内容。
答案 3 :(得分:0)
遗憾的是,Windows Universal Applications无法直接访问“显示设置”。但您可以使用AlarmApplicationManager Class创建警报。在某些情况下(肯定在WindowsPhone上),这将自动打开显示屏以显示警报(带有标题和描述)。