3

在我的 Package.appxmanifest 文件中,我添加了一个后台任务声明,”因为我最终需要一个 - 它还没有被编写。我选择“系统事件”作为支持的任务类型,但在应用程序设置中没有任何内容(可执行文件、入口点、起始页)。

当我在添加该声明后尝试运行应用程序时,我得到:“应用程序清单缺少必需的元素'/Package/Applications/Application/Extensions/Extension/BackgroundTasks/Task'”

那么是否有一些值我可以输入到“应用程序设置”编辑框之一,或者我必须先创建后台任务,然后再声明我将使用一个,或者......???

更新

根据http://www.silverlightshow.net/items/Windows-8-metro-make-your-app-alive-with-background-tasks.aspx, ControlChannel 选项可用于套接字:

“ControlChannel:这些任务仅在 XAML/C# 应用程序中可用,可以在网络资源接收到一些数据时得到通知。这些主要与 StreamSockets 相关。此外,此任务需要锁屏约束。”

文章还提到:“......您可以收到有关许多系统事件的通知。这些事件在发生某些事情时触发,例如传入的 SMS,......”但如果我理解正确,只有移动服务提供商可以实现SMSReceived 事件。

但是我仍然不清楚的一件事是:我可以在我的项目中创建一个将作为后台任务的类,还是我需要在我的解决方案中添加一个项目来作为/包含后台任务?如果是后者,该项目应该是“类库(Windows 应用商店应用程序)”还是“Windows 运行时组件”项目类型?

4

3 回答 3

2

您可以在实际实现之前定义后台任务,只需:

  • 在清单添加功能后台任务中,检查计时器并在入口点行中添加包含后台任务代码的类的全名。就我而言,我到了那里:

任务.UpdateTask

  • 选择锁屏通知类型并选择徽章标志。注意 徽章标志必须是 24x24 并且只能使用白色或(半)透明背景

更新,后台任务必须在另一个项目中定义,并且必须是“Windows运行时组件”类型。请注意,这种类型的项目有几个限制,基本上您将无法在其中引用任何其他非 Windows 运行时组件库。
http://msdn.microsoft.com/en-us/library/windows/apps/br230301.aspx

于 2012-11-02T06:24:19.287 回答
2

您可以在应用清单文件中定义后台任务。后台任务定义在哪里没有这个要求,可以放首页地址。见下图。您需要定义Task Type. 就我而言,我定义了Timer. 在Entry point我的情况下,我也定义了ItemsPage.cs,(我没有后台任务ItemsPage.cs)。在此处输入图像描述

之后,您需要拥有Badge logoLock Screen NotificationsApplication UI选项卡中。在此处输入图像描述

于 2012-11-02T01:11:10.397 回答
1

您必须至少创建一个入口点才能在应用清单中列出它。

于 2012-10-31T23:15:46.487 回答