2012-08-05 79 views
2

我最近在我的可可應用程序中添加了Sparkle Framework [http://sparkle-project.org/]。當我向Appcast.xml添加一個虛擬的新項目(版本1.1),並隨後嘗試從版本1.0進行更新時,它會顯示「XXX 1.0目前是最新版本」。Sparkle Always Up Date

我一直在這裏一段時間,我已經閱讀了文檔[https://github.com/sparkle-project/Sparkle/wiki]很多次,沒有成功。

這裏是我的Info.plist:

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> 
<plist version="1.0"> 
<dict> 
    <key>BuildMachineOSBuild</key> 
    <string>11E53</string> 
    <key>CFBundleDevelopmentRegion</key> 
    <string>en</string> 
    <key>CFBundleDisplayName</key> 
    <string>Snappi</string> 
    <key>CFBundleExecutable</key> 
    <string>Snappi</string> 
    <key>CFBundleIconFile</key> 
    <string>snappi_icon.icns</string> 
    <key>CFBundleIdentifier</key> 
    <string>com.snppi.Snappi</string> 
    <key>CFBundleInfoDictionaryVersion</key> 
    <string>6.0</string> 
    <key>CFBundleName</key> 
    <string>Snappi</string> 
    <key>CFBundlePackageType</key> 
    <string>APPL</string> 
    <key>CFBundleShortVersionString</key> 
    <string>1.0</string> 
    <key>CFBundleSignature</key> 
    <string>????</string> 
    <key>CFBundleVersion</key> 
    <string>100</string> 
    <key>DTCompiler</key> 
    <string>com.apple.compilers.llvm.clang.1_0</string> 
    <key>DTPlatformBuild</key> 
    <string>4E3002</string> 
    <key>DTPlatformVersion</key> 
    <string>GM</string> 
    <key>DTSDKBuild</key> 
    <string>11E52</string> 
    <key>DTSDKName</key> 
    <string>macosx10.7</string> 
    <key>DTXcode</key> 
    <string>0433</string> 
    <key>DTXcodeBuild</key> 
    <string>4E3002</string> 
    <key>LSApplicationCategoryType</key> 
    <string>public.app-category.productivity</string> 
    <key>LSBackgroundOnly</key> 
    <false/> 
    <key>LSMinimumSystemVersion</key> 
    <string>10.6</string> 
    <key>LSUIElement</key> 
    <string>1</string> 
    <key>NSHumanReadableCopyright</key> 
    <string>Copyright © 2012 Marshall Moutenot All rights reserved.</string> 
    <key>NSMainNibFile</key> 
    <string>StatusBar</string> 
    <key>NSPrincipalClass</key> 
    <string>NSApplication</string> 
    <key>SUFeedURL</key> 
    <string>http://app.snppi.com/Snappi.xml</string> 
    <key>SUPublicDSAKeyFile</key> 
    <string>dsa_pub.pem</string> 
</dict> 
</plist> 

而且我appcast.xml(重命名爲Snappi.xml):

<?xml version="1.0" encoding="utf-8"?> 
<rss version="2.0" xmlns:sparkle="http://www.andymatuschak.org/xml-namespaces/sparkle" xmlns:dc="http://purl.org/dc/elements/1.1/"> 
    <channel> 
    <title>Snappi</title> 
    <link>http://app.snppi.com/Snappi.xml</link> 
    <description> 
     Send snapshots and files to friends in seconds. Snappi automatically generates a short link, so all you have to do is press paste.  
    </description> 
    <language>en</language> 
    <item> 
     <title>Version 1.1</title> 
     <sparkle:releaseNotesLink> 
    http://app.snappi.com 
     </sparkle:releaseNotesLink> 
     <pubDate>Sat, 4 Aug 2012 20:26:11 +0000</pubDate> 
     <enclosure 
    url="http://app.snppi.com/Snappi_1_1.dmg" 
    sparkle:version="1.1" 
    length="10518528" 
    type="application/octet-stream" 
    sparkle:dsaSignature="MC0CFHaN/qB0aAb6V9rHMVHCLoBrTyJ8AhUAl0Wazod0rtzpxsvIaL0aYTg+KpQ=" 
    /> 
    </item> 
    <item> 
     <title>Version 1.0</title> 
     <sparkle:releaseNotesLink> 
    http://app.snappi.com 
     </sparkle:releaseNotesLink> 
     <pubDate>Sat, 4 Aug 2012 18:26:11 +0000</pubDate> 
     <enclosure 
    url="http://app.snppi.com/Snappi_1_0.dmg" 
    sparkle:version="1.0" 
    length="10518528" 
    type="application/octet-stream" 
    sparkle:dsaSignature="MC0CFHaN/qB0aAb6V9rHMVHCLoBrTyJ8AhUAl0Wazod0rtzpxsvIaL0aYTg+KpQ=" 
    /> 
    </item> 
    </channel> 
</rss> 

謝謝!

此外:思考更多,應該導致行爲不同於「你已經是最新的」?我覺得會,但我不確定。

回答

13

Sparkle將appcast中的sparkle:version屬性與plist中的CFBundleVersion(這是機器可讀版本)進行比較。

所以,在這裏,你的CFBundleVersion(100)表明你有一個更新的(> 1.0)版本,這是什麼在appcast。

另一方面,CFBundleShortVersionString(對應於cast中的sparkle:shortVersionString)用於「用戶可顯示」版本。

+0

無縫集成本無憂構建服務器<3 <3 <3 <3個感謝的人 – 2012-08-06 01:08:50

+0

歡迎你:-) – 2012-08-06 01:39:40

+0

能否請你幫我換http://stackoverflow.com /問題/ 27964147 /閃閃發光的框架定位-問題 – 2015-01-16 15:48:58