问题标签 [background-agents]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
122 浏览

windows-phone-8 - 后台代理在本地环境中工作正常,但在应用提交到应用商店后失败

我有一个使用 PeriodicTask 后台代理的 wp8 应用程序。

该任务更新多个动态磁贴的信息,使用POST 客户端从我的服务器获取标题和图像 url 以更新动态磁贴。

后台代理在调试和发布模式下工作得很好。当使用 XAPDeployement 工具将 .xap 文件部署到我的设备中时,后台代理也可以完美运行。

但是,无论是不是beta版本,提交到wp应用商店后都无法使用。如果应用是从商店下载的,后台代理从来没有工作过,几分钟后就被系统阻止了。

由于 XAP 文件相同,为什么会出错?

部分代码:

ScheduledAgent 类:

0 投票
2 回答
133 浏览

.net - Windows Phone 8中如何减少后台代理预定间隔的默认时间?

我对 windows phone 8 中后台代理的定期任务有疑问。

我想减少计划间隔的默认时间(30 分钟)。

我怎么能做到这一点?!

提前致谢。

0 投票
1 回答
140 浏览

windows-phone-8 - 后台代理 ParseUser.CurrentUser 未缓存/不可访问 Windows Phone

我已经在我的 Windows Phone 8 应用程序中实现了一个(目前)简单的后台代理。在后台代理中,发出 WebRequest 以更新以 XML 形式存储在 IsolatedStorage 中的股票列表。在应用程序的其他部分,在调试过程中,我可以看到当前登录的用户;但是,当 BackgroundAgent 启动时,CurrentUser 为空。此时,CurrentUser不应该被缓存在应用程序中吗?它似乎为应用程序的一部分(主应用程序)缓存,但在其他部分(后台代理)中未缓存/不可接受。当前用户似乎从未在我的后台代理中设置。我愿意提供更多信息,但有人知道这是错误还是实现错误?

问题:在 BackgroundAgent 中 CurrentUser 总是设置为 null。BackgroundAgent 中的会话是否与主项目不同(这就是它从未设置的原因)?任何帮助表示赞赏。

0 投票
1 回答
109 浏览

windows-phone-8 - WP8 - 如何让后台代理执行等待所有 ImageOpened 事件被触发以使用自定义图像更新动态磁贴?

如何让后台代理执行等待所有ImageOpened()事件被触发(在本例中为 3 个),以便使用自定义图像更新辅助活动磁贴?

编辑1:

在我正在调用我自己的创建磁贴数据函数的OnInvoke()方法中,该函数在共享库中实现,当我尝试为所有实时磁贴模板(即小、中和宽)创建自定义图像时,该函数又订阅 3 个事件。ScheduledAgentImageOpened()

由于这些是异步事件,我无法检查所有事件是否已成功完成,以便我可以调用NotifyComplete()以通知后台代理其工作现已完成。因此,有时磁贴会更新,而大多数情况下不会。此外,每次启动应用程序时,我都使用相同的功能来更新动态磁贴,因此它的实现没有问题。GC.Collect()我还尝试通过处理位图并强制调用来处理 ScheduledAgent 的所有内存限制。

请以任何可能的方式帮助解决此问题。

0 投票
1 回答
87 浏览

windows-phone-8 - 永无止境的 Windows phone 8 后台代理

我知道如何创建后台代理以及它如何调用其 onInvoke 方法。

现在有什么办法可以在 onInvoke 方法中创建一个后台线程并执行 1-2 天的长时间运行任务吗?

请问题不是我为什么需要这个,问题是天气是否可以完成。

我不希望代理每 30 分钟安排一次,而是在第一次调用时,它应该启动一个后台线程并开始工作,除非它被应用程序逻辑停止。

谢谢

0 投票
3 回答
567 浏览

c# - WP8 后台代理 - 代码在代理外部执行良好,内部失败?

我创建了一个后台代理来更新我的动态磁贴。代理调度和执行正常,但代理执行的代码成为问题 - 它根本无法完全执行并且没有提供任何错误。据我所知,我使用的 API 没有受限,除非 Cimbalino 工具包以某种方式提供了问题,即使我使用的是 NuGet 的后台代理特定版本。

当 RenderText() 和 RenderTextWide() 无法运行时,代码似乎停止执行。没有提供错误。在前台应用程序中运行时,相同的代码可以正常工作。

0 投票
1 回答
1511 浏览

c# - Windows phone 8.1 后台定时器停止音乐

您好,作为在后台使用 播放轻松音乐的应用程序的一部分BackgroundMediaPlayer,我想实现一种在设定时间后关闭音乐的方法..

我的想法是让TimerPicker用户选择音乐何时停止,然后在 appxmanifest 中的声明下将 Timer 作为支持的任务类型添加到我的 MusicBackgroundTask 中。

然后以某种方式正确地使用ThreadPoolTimer我的 MusicBackgroundTask Windows 运行时组件中的 a 在它滴答作响时停止音乐,但我真的无法在网上找到任何解释如何在后台任务中使计时器工作的地方。

因此,如果有人有一个很好的链接来解释或改进一些工作代码,那将是一个很大的帮助,非常感谢你..

0 投票
1 回答
110 浏览

windows-phone-8 - 删除后台代理后自动将活动磁贴恢复为静态磁贴

我的应用程序的主磁贴具有动态磁贴功能。但是,如果我关闭动态磁贴功能,当我返回“开始”屏幕时,我的应用程序的主磁贴仍显示动态磁贴的最后状态。

我想知道我需要做什么才能在我关闭动态磁贴功能后立即将我的应用程序的主磁贴恢复到其静态状态?目前,我需要调整磁贴的大小或删除/重新插入它以获得这种效果。

这是我关闭动态磁贴时运行的代码:

0 投票
1 回答
1207 浏览

windows-phone-8 - Windows Phone 8 后台代理仅在使用调试版本时运行(似乎没有在发布版本上运行)

这是一个奇怪的问题。

当我运行调试版本时,我的 Windows Phone 8 应用程序的后台代理似乎全天都在正常更新。但是,当我更改为发布版本时,它要么根本不运行,要么很少运行。这是一个天气应用程序:我的动态磁贴的内容应该每小时更改一次。我见过它有时每小时更新一次,然后停止几个小时,然后突然重新开始。应用程序的后台代理在任何时候都不会被操作系统阻止,这对我来说表明后台代理没有任何问题,或者它只是没有运行太多/根本没有运行。

目前,我已经在运行 Windows Phone 8.1 的 Lumia 1020 上调试和发布了应用程序版本。在代码方面它们是相同的。调试版本每 30 分钟更新一次(我知道活动磁贴上时间戳的原因),而发布版本自 90 分钟前创建以来没有更新一次(但其后台代理仍被列为“允许”在省电应用程序上运行)。

这是创建代理的方法:

这是预定的代理代码:

任何人都知道可能导致这种情况的任何想法,或者有任何类似的经验,即后台代理仅适用于调试版本?

谢谢你的时间。

0 投票
1 回答
56 浏览

windows-phone - Windows Phone 后台代理 - 导致未知解析器错误的自定义控件:扫描程序 2147500037

我正在尝试在我的后台代理中为活动磁贴使用自定义控件。我使用用户控件成功生成了动态磁贴,但现在我想在我的用户控件 Xaml 中引用自定义控件。在设计时,一切看起来都是正确的,没有错误,并且我看到了设计器中显示的自定义控件,但是当我运行应用程序并且后台代理运行时,我收到了这个错误:

未知的解析器错误:扫描仪 2147500037

错误中指出的位置是我在 Xaml 中拥有自定义控件的位置。如果我删除自定义控件,错误就会消失。

我尝试使用的自定义控件(及其源代码)可以在这里找到:http: //blogs.u2u.net/diederik/post/2013/11/05/A-Modern-UI-radial-gauge-control -for-Windows-Phone-8-apps.aspx

我不相信这个自定义控件中有任何不能在后台代理中运行的引用,所以我想知道在 Windows Phone 的后台代理中使用自定义控件是否有一些限制?

如果有人对此错误的原因有任何想法,请告诉我。