0

我正在使用 sparkle 来更新我的应用程序。但是,我面临一个问题。

这是我的 appcast.xml

<rss xmlns:sparkle="http://www.andymatuschak.org/xml-namespaces/sparkle" xmlns:dc="http://purl.org/dc/elements/1.1/" version="1.2">
<channel>
    <title>Sparkle Test App Changelog</title>
    <link>
        http://sparkle-project.org/files/sparkletestcast.xml
    </link>
    <description>Most recent changes with links to updates.</description>
    <language>en</language>
    <item>
        <title>Version 2.0</title>
        <description>
            <![CDATA[...]]>
        </description>
        <pubDate>Sat, 26 Jul 2014 15:20:11 +0000</pubDate>
        <enclosure url="http://techheal.in/mac/testing_techheal.dmg" sparkle:version="2" length="107758" type="application/octet-stream" sparkle:dsaSignature="MCwCFCdoW13VBGJWIfIklKxQVyetgxE7AhQTVuY9uQT0KOV1UEk21epBsGZMPg=="/>
    </item>
</channel>

这是我得到的流行音乐: 在此处输入图像描述

问题是我正在运行最新的构建,但它仍然向我显示由于构建版本而有更新

我的最新版本是:2 我的最新版本是:1

在此处输入图像描述

在 xml 中,我指定了我的最新版本,但我不知道它从哪里获取内部版本号。请帮忙

4

1 回答 1

0

“构建”是 CFBundleVersion。“版本”是 CFBundleShortVersionString。

这些通常应该是相同的,“构建”是内部的,“版本”是你向用户展示的。这篇(旧但很好)文章为您提供了一些很好的信息:

http://www.dribin.org/dave/blog/archives/2006/08/02/versioning_os_x_apps/

在您的情况下发生的事情是 Sparkle 正在抓取 CFBundleVersion(为 1)并将其与您的 XML 文件(有 2)进行比较,并认为您必须升级。

于 2015-10-02T21:20:08.860 回答