检查新版本(更新检查)
Posted
技术标签:
【中文标题】检查新版本(更新检查)【英文标题】:Checking for a New Version (Update Check) 【发布时间】:2012-04-13 01:32:12 【问题描述】:对于我的程序,我想在它运行时检查它是否有新的更新。我不希望它自动更新。它甚至不需要提供指向新版本的链接。
我在想我应该怎么做,我应该有一个像这样的网页:
www.website.com/checkversion
该页面将仅包含 1 个内容。它将包含一个版本号。网站上的版本号将是发布的最新版本。如果版本号不等于程序的版本号,它将使用户知道有更新的版本。否则它当然不会做任何事情。
我看过这个问题:
Automatically checking for a new version of my application,这让我开始思考。 Is this the way I should be doing it?
我不确定这样做是否会为我提供足够的基础,您可以说提供足够的信息。
我想知道我应该使用哪种方法以及需要使用哪种功能,因为我以前没有玩过基于 Web 的功能。
【问题讨论】:
使用Java Web Start,可以在 JNLP 文件中配置更新,并且可以在程序控制下进行。 f 当然,如果你坚持改造现有技术,那就去做吧。我希望有一个在网络技术方面经验丰富的程序员。 & Java 可能会在 2-3 个月内产生一个可行的解决方案。 “我以前没有玩过基于 Web 的功能。” 哦,这个估计值的三倍。 :( 【参考方案1】:一般来说,这几乎就是您所拥有的,我建议您返回的不仅仅是一个数字,而是一些字典/地图,序列化为JSON 或类似名称,所以将来您可能想要放更多数据,并且仍然与旧版本兼容。例如,而不是返回:
1
返回:
"latest_version" : 5
因此,如果您以后想添加更多详细信息,可以返回:
"latest_version" : 5, "minimal_compatible_version" : 2, "download_file_size_in_bytes" : 123456
这个想法是让响应扩展(当您需要返回更多数据时)并且仍然向后兼容。
至于如何执行这样的请求,请看here(虽然 apache commons 也有很棒的库)。
【讨论】:
对不起,我在这里对 Java 比较陌生。您能否更详细地解释一下,以帮助我理解? 好的,我知道我现在应该如何从站点获取数据,但我仍然缺乏对如何准确解析数据和知道数据含义的理解。因此,在您提供的示例中,程序将如何解析该数据。我假设它与 JSON 有关,但不幸的是我没有足够的经验来完全理解这一点。 看看这个问题:***.com/questions/338586/a-better-java-json-library 好吧,如果你看看这里:code.fogest.net16.net/version.html 是页面应该是什么样子还是我都错了? 好的,所以我将它用于 Web 部件和获取它,现在我只需要知道如何获取这样的字符串并将其读入并使用它。有没有人在这样的行中阅读并使用它的好例子?我相信一旦我理解它并不难。以上是关于检查新版本(更新检查)的主要内容,如果未能解决你的问题,请参考以下文章