2011-05-16 79 views
2

让我明白我的意思。我已经在市场上发布了1.0版本的应用程序。现在我想更新我的应用程序到版本1.1。我写了一个方法,只有当应用程序从1.0更新到1.1时才应该调用它。当新用户已经从市场上安装1.1版本的应用程序时,不应该调用一个方法。如何区分应用程序是已更新还是首次安装?

有什么建议吗?

编辑

我可以让应用程序安装之日起解决我的问题。有什么方法可以在代码中获得这种信息?

+0

这种方法有什么作用?有没有什么方法可以检测到它已经运行或者它所采取的数据格式是否正确?如果是这样,那么最好做到这一点,并安全地终止该方法。 – ChrisF 2011-05-16 11:54:43

+0

此方法显示消息,其中有应用程序的更改和新功能。我不能依赖数据,因为用户可以重置应用程序中的数据。 – Maku 2011-05-16 12:01:19

+0

在版本中设置一个版本号,检查它,如果需要显示,然后设置一个“用户设置”,说他们已经看到它的版本,并不显示它,直到版本1.2 :) – Mark 2011-05-16 12:03:35

回答

7

你必须自己管理它。

最简单的方法是存储(在IsolatedStorageSettings中)当前的应用程序版本号。然后,您在启动时检查并将其与当前应用程序版本编号进行比较。

如果在设置中没有值,那么您知道它是第一次安装。
如果版本号不同,您知道该应用已更新,您可以采取任何适当的措施作为升级的一部分。 (另外 - 当应用程序确认它们已升级时,我总觉得它很好。)

没有办法获得安装的日期时间,但可以捕获第一次运行的日期/时间。只需获取(并保存?)存储版本号的日期/时间。请注意,您的设备上的日期/时间会发生变化。如果你想使用web服务来获取日期/时间,那么你将不得不处理没有连接的问题。
我建议不要试图根据设备上的日期/时间来确定版本/升级,因为有很多可能需要考虑和解决的问题。

+0

谢谢您的全面解答。 – Maku 2011-05-16 13:55:19

相关问题