0

我创建了一个简单的任务,当在 windows phone 8.1 通用应用程序中收到短信但它不起作用时触发?还有其他人有同样的问题吗?这是我的代码。

await BackgroundExecutionManager.RequestAccessAsync();

        BackgroundTaskBuilder taskBuilder = new BackgroundTaskBuilder();
        taskBuilder.Name = "SMSTask";

        //GattDeviceService.FromIdAsync();
        //GattCharacteristicNotificationTrigger trigger = new GattCharacteristicNotificationTrigger(GattCharacteristic);

        SystemTrigger systemTrigger1 = new SystemTrigger(SystemTriggerType.TimeZoneChange, false);
        BackgroundTaskBuilder taskBuilder1 = new BackgroundTaskBuilder();
        taskBuilder1.Name = "TestTask";
        taskBuilder1.SetTrigger(systemTrigger1);
        taskBuilder1.TaskEntryPoint = typeof(TestTask.TestTask).FullName;
        taskBuilder1.Register();

        SystemTrigger systemTrigger = new SystemTrigger(SystemTriggerType.SmsReceived, false);
        taskBuilder.SetTrigger(systemTrigger);

        taskBuilder.TaskEntryPoint = typeof(SMSTask.SMSTask).FullName;
        taskBuilder.Register();
        lblMessage.Text = "both task registered";

在上面的代码中,有 2 个任务一个用于时区,它工作正常,另一个用于接收短信,当我在我的移动设备中接收短信时它不起作用

4

1 回答 1

1

根据这个 Windows 开发中心论坛主题,http: //social.msdn.microsoft.com/Forums/windowsapps/en-US/5c8836cf-4acd-479a-9847-f60b4be7e146/background-task-systemtriggertypesmsreceived-wont-triggered?forum =wpdevelop,看来这个触发器只会在 Windows Phone 8.1 上为移动运营商应用程序触发(我猜这些会被操作系统以某种方式列入白名单,不确定)。

另请参阅后台任务 SystemTriggerType.SmsReceived won't trigger中提出的这个问题,该问题在Windows Phone 8.1 的文档不是最终版本时被询问。此限制的文档似乎仍然没有明确说明。如果有人知道为 MSDN 文档提交此反馈的最佳方式,我建议您这样做。

于 2014-09-01T19:35:45.770 回答