AppTaskInfo 类

定义

表示可在 Windows Shell 中显示的应用任务。

public ref class AppTaskInfo sealed
/// [Windows.Foundation.Metadata.ContractVersion(Windows.UI.Shell.Tasks.AppTaskContract, 65536)]
/// [Windows.Foundation.Metadata.Experimental]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class AppTaskInfo final
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.UI.Shell.Tasks.AppTaskContract), 65536)]
[Windows.Foundation.Metadata.Experimental]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class AppTaskInfo
Public NotInheritable Class AppTaskInfo
继承
Object Platform::Object IInspectable AppTaskInfo
属性

Windows 要求

要求 说明
设备系列
Windows Desktop Extension SDK (在 10.0.26100.0 中引入)
API contract
Windows.UI.Shell.Tasks.AppTaskContract (在 v2.0 中引入)

注解

重要

从 2026 年 5 月开始,应用任务支持将逐步推出到 Windows 11。 API 启用 Windows.UI.Shell.Tasks 的体验要求在运行应用的 Windows 版本中存在相应的应用任务功能。 否则,这些 API 将没有任何影响。

此类支持创建、更新和删除任务表示形式。 任务在应用会话和系统重新启动之间持久保存。

对于每个任务,请创建一个新 AppTaskInfo 实例并将其修改为表示任务状态。 当任务不再相关时,请调用 Remove 将其从 Shell 中删除。

使用 IsSupported 检查该功能是否可用,然后再尝试创建或枚举任务。 使用 FindAll 枚举以前创建的现有任务。

用户可以通过任务栏界面隐藏任务。 隐藏任务不会影响在应用中运行的任务;其表示形式只是从任务栏中删除。 HiddenByUser 属性指示任务是否已被用户隐藏。

使用 shell 任务 API

需要打包使用这些 API 的应用。 有关详细信息,请参阅 打包概述

还需要将 com.microsoft.apptaskproviderAppExtension 添加到应用清单,如下所示:

<Package
  xmlns="http://schemas.microsoft.com/appx/manifest/foundation/windows10"
  xmlns:rescap="http://schemas.microsoft.com/appx/manifest/foundation/windows10/restrictedcapabilities"
  xmlns:uap="http://schemas.microsoft.com/appx/manifest/uap/windows10"
  xmlns:uap3="http://schemas.microsoft.com/appx/manifest/uap/windows10/3"
  IgnorableNamespaces="rescap uap uap3">
...

<Application>
  ...
  <Extensions>
    <uap3:Extension Category="windows.appExtension">
        <uap3:AppExtension
            Name="com.microsoft.apptaskprovider"
            PublicFolder="Public"
            Id="MyApp.AppTaskProvider"
            DisplayName="AppTaskProvider for MyApp"/>
    </uap3:Extension>
  </Extensions>
  ...
</Application>

...
</Package>

属性

名称 说明
DeepLink

获取一个 URI,该 URI 将在用户单击任务的 Shell 表示形式时启动。

EndTime

获取此任务达到结束状态的时间(例如 CompletedError)。

HiddenByUser

获取一个值,该值指示用户是否已通过 Windows Shell 隐藏此任务。

IconUri

获取表示任务的图标的路径。

Id

获取此任务自动生成的唯一标识符。

StartTime

获取创建此任务的时间。

State

获取此任务的当前状态。

Subtitle

获取此任务的副标题。

Title

获取此任务的标题。

方法

名称 说明
Create(String, String, Uri, Uri, AppTaskContent)

使用指定的参数创建新的应用任务。

FindAll()

返回由当前应用程序创建的所有应用任务。

GetCompletedSteps()

获取为此任务完成的步骤序列。

GetExecutingStep()

获取当前正在为此任务执行的步骤。

IsSupported()

获取一个值,该值指示当前设备上是否支持应用任务功能。

Remove()

从 Windows Shell 中删除此任务,但不会更改其状态。

Update(AppTaskState, AppTaskContent)

更新此任务的状态和内容。

UpdateDeepLink(Uri)

更新此任务的深层链接 URI。

UpdateState(AppTaskState)

在不更改任务内容的情况下更新此任务的状态。

UpdateTitles(String, String)

更新此任务的标题和副标题。

适用于