为Windows桌面应用程序注册BLE后台任务(未找到BackgroundTaskRegistration的元素)

ZX9*_*ZX9 5 .net c# wpf bluetooth-lowenergy

我尝试在 Windows 桌面C# 应用程序中使用Windows 10 运行时低功耗蓝牙 (BLE) APIWPF。该代码主要基于蓝牙广告 UWP 示例,但我添加了对相关库的引用。

但是,我在课堂上遇到了问题BackgroundTaskRegistration

在我的方法中(与RegisterBackgroundTask基本相同),我尝试查看我的 BLE 扫描后台任务是否已存在:

foreach (var cur in BackgroundTaskRegistration.AllTasks)
     {
           if (cur.Value.Name == taskName)
           {
                 // The task is already registered.
                 return (BackgroundTaskRegistration)(cur.Value);

           }
     }
Run Code Online (Sandbox Code Playgroud)

但在第一行,调用BackgroundTaskRegistration.AllTasks给出:

抛出异常:BLEProximity.exe 中的“System.Exception”

消息:未找到元素。(HRESULT 异常:0x80070490)

:位于 C:\Users\MyUserName\Documents\Visual Studio 2015\Projects\BLEProject 中的 BLEProject.MainWindow.RegisterBackgroundTask(String taskEntryPoint、String taskName、IBackgroundTrigger 触发器、IBackgroundCondition 条件)处的 Windows.ApplicationModel.Background.BackgroundTaskRegistration.get_AllTask​​s() \BLEProject\MainWindow.xaml.cs:第 421 行

来源:Windows.ApplicationModel

如果我绕过上述后台任务是否存在的检查,当我Register()调用BackgroundTaskBuilder. 请注意,在应用程序中使用此代码时,我对它没有任何问题UWP。有关更多背景信息,请参阅此相关问题

我唯一的猜测是,这可能与应用程序清单以某种方式相关,但我对 Windows 应用程序开发还相当陌生。