gpt4 book ai didi

windows-phone-7 - 我们什么时候应该用关键数据更新应用程序?

转载 作者:行者123 更新时间:2023-12-04 06:55:09 25 4
gpt4 key购买 nike

我需要通过互联网使用存储在外部数据库中的内容更新设备上的本地数据库。此应用程序将用于下订单,因此元素的奖品必须始终是实际的。目前,当我们看到带有进度条和某种公告的漂亮图片时,我有类似启动屏幕的东西。首先,我从外部服务器获取 db 的版本,如果它等于本地版本,我将转到菜单屏幕。如果不相等,我更新我的本地数据库,然后转到主菜单。此屏幕仅在我们使用该应用程序时打开。

我描述了我如何看待 WP 生命周期

应用程序只在第一次吃午餐,下次我们需要通过后退按钮关闭应用程序时获得午餐事件,但它并不总是这样工作。我不确定,但我认为当我们快速启动应用程序并关闭它时,应用程序被停用而不是关闭。

当用户转到其他应用程序时,我们的应用程序进入休眠状态,当我们返回我们的应用程序时,它将被激活(不是午餐)

这是显示应用程序生命周期的图片

enter image description here

我从这个网站拍了这张照片:http://blogs.msdn.com/b/lindsay/archive/2012/04/10/hackready-phone-episode-3-of-7-understanding-windows-phone-s-application-lifecycle-and-state-management.aspx

我的问题是我们什么时候应该更新我们的应用程序?

我们不能给使用旧数据(奖品/产品)下订单的机会。用户可以让我们的应用程序处于休眠状态数周,同时奖品可能会上升或下降。另一方面,当我们每次激活我们的应用程序时都会检查更新,我们会产生大量流量,这对用户来说会很尴尬。 (用户在这里非常重要,因为他会玩它)。

您对通过发送推送通知通知应用更新有何看法。当应用程序收到通知时,它只显示更新屏幕并完成工作;)我认为这是最好的方法,因为应用程序不需要每次都请求更新服务器,我们不会错过任何新内容.

任何建议和观点,你会如何解决这个问题对我来说都是无价的。

最佳答案

这是个很好的问题:您应该何时更新客户端上的数据,以确保该应用程序的用户始终保持最新状态?

不幸的是,这个问题没有绝对的答案可以涵盖每个人的所有场景。

如果价格变化发生在可预测的基础上,例如隔夜或在特定时间和/或一周中的特定几天,则处理这种情况最容易。

如果我们知道价格只在一天(或一周)的特定时间发生变化,我们可以限制不必要的网络流量(并因此延迟使用该应用程序),方法是检查自上次以来我们是否没有检查过价格可能已经改变了。

如果使用 Silverlight 技术构建应用程序(如果目标是 7.X、8.0 和可能的 8.1 就是这种情况),那么您应该检查启动或激活事件被触发时应用程序是否启动。
当然,在使用应用程序时价格可能会发生变化。在这种情况下,您可以在应用程序运行时向它发送推送通知,告诉它更新数据。您可能还需要处理尝试购买但尚未收到或尚未采取此类通知的情况。更多内容见下文。
无法在未运行时向此类应用发送消息以使其自动触发获取最新数据。

如果您想在后台检查(当应用程序未运行时),那么您需要使用周期性后台代理,它可以下载最新数据,为下次使用应用程序做好准备。

如果为 Windows Phone 8.1 构建应用程序并使用新的应用程序框架(即不是 Silverlight),则可以触发后台任务以从通知消息下载最新数据。您可能还想触发对设备的检查,以防在设备未开机时错过任何通知。
在应用程序启动时,您应该在激活或恢复事件后检查最新数据,以便在导航到(启动)应用程序时进行检查。

使用上述任何一种技术,您都无法确定应用程序是否已收到消息通知它更新数据,或运行后台任务以检查最新数据甚至能够获取到服务器在应用程序未运行时获取最新数据。这就是为什么除了在后台完成的任何检查之外,还要检查启动时的原因。

最后,如果价格可以随时更改并且必须使用/兑现最新价格,则有必要在购买时检查客户端上使用的值是否与最新的服务器价格和产品实际上是制作的。 (事实上​​ ,您可能无论如何都会检查它以确保没有订购已停产或缺货的产品。)
这应该是在其他时间同步数据的任何其他工作的补充。

关于windows-phone-7 - 我们什么时候应该用关键数据更新应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20954437/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com