Geofence windows phone 8.1中触发后台任务的阈值距离

Posted

技术标签:

【中文标题】Geofence windows phone 8.1中触发后台任务的阈值距离【英文标题】:Threshold distance for triggering background task in Geofence windows phone 8.1 【发布时间】:2016-06-23 06:18:25 【问题描述】:

我有一个后台任务,它应该在位置发生一些变化时触发,因为它是使用 Geofence 触发器设置的。

builder.SetTrigger(new LocationTrigger(LocationTriggerType.Geofence));

private static async Task<string> LocationUpdateHelper()

    try
    
        var taskRegistered = false;
        string myTaskName = "LocationUpdateTask";
        foreach (var cur in BackgroundTaskRegistration.AllTasks)
            if (cur.Value.Name == myTaskName)
            
                taskRegistered = true;
                break;
            

        if (taskRegistered != true)
        

            await BackgroundExecutionManager.RequestAccessAsync();
            var builder = new BackgroundTaskBuilder();

            builder.Name = "LocationUpdateTask";
            builder.TaskEntryPoint = "SmartRuntimes.LocationUpdateTask";
            builder.SetTrigger(new LocationTrigger(LocationTriggerType.Geofence));
            try
            
                builder.Register();
                Debug.WriteLine("GeoFence Task Registered");
            
            catch (Exception ex)
            
                Debug.WriteLine("GeoFence Task Failed : " + ex.Message.ToString());
            
        

        return "success";
    
    catch (Exception ex)
    
        return "";
    

而 LocationUpdateTask 类是:

public sealed class LocationUpdateTask : IBackgroundTask

    public async void Run(IBackgroundTaskInstance taskInstance)
    
        string taskName = taskInstance.Task.Name;
        var deferral = taskInstance.GetDeferral();
        await BackgroundTaskHelper.UpdateLocation();
        deferral.Complete();
    

我的问题是:

这个后台任务会在位置发生变化时触发吗? 触发该后台任务需要更改多少距离?

谢谢!

【问题讨论】:

【参考方案1】:

很遗憾,Windows Phone 8.1 不支持后台连续跟踪。如果您想要此功能,则必须改为开发 Windows Phone 8 应用程序。希望他们能在 8.2、9 或接下来的任何版本中解决这个问题!

如果想了解更多后台任务检查here

也检查一下here

【讨论】:

以上是关于Geofence windows phone 8.1中触发后台任务的阈值距离的主要内容,如果未能解决你的问题,请参考以下文章

windows phone 8 和 10 的 windows phone 应用程序开发

Windows Phone 8 与 windows 8 开发技术概览

Windows Phone 8 与 windows 8 开发技术概览

xml 适用于Windows 8.1和Windows Phone 8.1应用程序的扩展器控件演示。

Windows Phone:PositionChanged 未触发 Windows 8

xml 适用于Windows 8.1和Windows Phone 8.1应用程序的扩展器控件的模板。