问题标签 [sparkle]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
147 浏览

objective-c - 在使用 Sparkle 更新后,应用程序不是活动的

我使用 Sparkle 为我的应用程序提供更新。

这个过程是一个非常简单和基本的过程:应用程序的更新被压缩,一个 XML appcast 为 Sparkle 提供了 zip 的 URL。

所有工作都按预期工作,Sparkle 发布更新广告,一旦我点击安装它,下载、解压缩存档,并要求安装和重新启动。

有一个问题:重新启动后应用程序不是活动的(最重要的?)之一,即:应用程序由“finish_installation”工具(重新)启动,但停留在应用程序堆栈的底部。

从 Sparkle 更新的其他应用程序的行为来看,这不是正常行为,系统正确地将应用程序的焦点放在正常的经典启动上。

如果重要的话,我会运行 Mac OS X 10.9.1 和 Xcode 5.0.2,并且该应用程序是基于文档的。

我确实注意到系统日志中有一条消息,说 zip 导入器在解析用于更新的存档时遇到错误 (2),但我怀疑这可能是问题的根源。

有人已经观察到这种行为了吗?即使在非更新配置上?任何帮助表示赞赏。

0 投票
2 回答
786 浏览

python - Sparkle Framework alternative for wxPython and Windows development

I create application on wxPython for MS Windows. It's a port of native OS X application I made before. In OS X application autoupdate of application is gracefully serving with Sparkle Framework. (It detects application updates by reading appcast.xml stored on server, then does all update specific magic, checking signatures etc.) Are any similar solutions exist for wxPython/Windows development? Do you need such port to integrate it into wxPython?

0 投票
3 回答
251 浏览

xcode - 如何禁用 Sparkle 关于 GC 的警告?

我在 Xcode 5 中使用 Sparkle 框架。当我构建时,我看到以下警告。有没有办法在不改变 Sparkle 使用 GC 的事实的情况下禁用(安静)这个警告?

谢谢!

在此处输入图像描述

0 投票
1 回答
126 浏览

objective-c - 如何在应用程序处于生产阶段时更改服务器 URL?

我已经使用框架在我的可可应用程序中实现了自动更新功能。Sparkle它正在成功更新我的产品。我正在遵循的步骤是。

我正在调用存储在服务器中的 .xml 文件的 url。从我的应用程序 .xml 文件调用我的产品,该文件存在于服务器的同一文件夹中。

现在由于某些原因,我必须将我的应用程序和 xml 放在一些不同的服务器中。在这种情况下,当用户检查应用程序更新时,他将无法更新,因为 url 将无法找到 xml 文件(现在存在于不同的服务器中)。

那么在这种情况下,我该如何更新我的应用程序?有什么方法可以在我的产品处于生产阶段时动态更改 xml 文件的 url。

0 投票
2 回答
807 浏览

xcode - Sparkle 冻结在“正在安装更新...”

我正在尝试在括号外壳应用程序中实现 Sparkle。我相信我已经正确设置了一切,但似乎失败了。

它将运行更新,找到更新,准备好,然后当我点击“安装并重新启动”按钮时,它将无限期地停留在“安装更新...”屏幕上。

我想也许是括号壳不想关闭它的最后一个孩子,所以我尝试实现updaterWillRelaunchApplication委托方法。我尝试在调用检查更新的函数之前添加它,如下所示:

但是,我从来没有看到调用的日志消息,我假设这意味着我的委托没有被调用。

所以,我基本上有两个问题:

  • 我是否正确实施了委托?我是一个完整的 XCode 新手,所以我只知道它看起来像我在网上看到的示例,并且它可以编译。我在哪里声明代表重要吗?
  • 如果不是因为退出不正确,为什么 Sparkle 可能会冻结?

谢谢。

更新

我发现了一个非常奇怪和有趣的行为。如果在完成更新时我没有任何窗口(我的应用程序窗口或 Sparkle 窗口)聚焦,它将完全正常工作。如果我集中注意力,我的主窗口将关闭(就像它试图重新启动一样),但 Sparkle 窗口保持打开状态。然后我必须右键单击并关闭应用程序。

但是,如果在我点击“安装并重新启动”按钮后立即切换到另一个应用程序(如 Chrome),它会在后台正常运行。如果 Sparkle 有焦点,它似乎不会自行关闭。很奇怪。

作为一种解决方法,我手动将“启用自动更新”设置为 true,这样它就可以在没有最终窗口的情况下完成所有操作,这可以工作......但并不是很理想。

0 投票
1 回答
1150 浏览

xcode - 直接分发 Mac 应用程序是否需要“验证”和“分发”步骤?

我正在努力使用 xCode 5 自动化发布 Mac 应用程序的过程。该应用程序仅在 Mac App Store 之外分发(直接分发)。我知道我可以添加一个在构建阶段执行的运行脚本来自动化这个过程。我目前正在使用 Craig Williams 的 ruby​​ 脚本来实现 appcast 自动化。脚本在这里:https ://github.com/CraigWilliams/appcastautomation/blob/SnowLeopard/appcast_automation.rb

我的问题是:验证和分发步骤是否必要?如果代码签名已完成,我可以简单地运行自动化脚本并使用脚本生成的 .zip 文件,还是必须完成下面概述的步骤,然后使用脚本处理“导出”应用程序?

我目前的流程如下:

  1. 从 xCode 的产品菜单中选择“存档”。
  2. 打开管理器并按“验证”按钮。
  3. 按“分发”并选择“导出开发人员 ID 签名的应用程序”,然后按“下一步”。
  4. 选择我的 Developer ID 代码签名证书。
  5. 按“导出”保存 MyApp.app 文件。

获得“导出”的 .app 文件后,我将通过终端手动运行脚本以创建 Sparkle appcast 所需的 .zip 文件。我希望跳过 xCode 导出过程作为自动化分发的第一步。

0 投票
1 回答
190 浏览

java - 如何在 Sparkle 更新程序(Java 应用程序)中等待用户操作?

所以我有 SparkleAcrivator 类

以及我启动独立应用程序并使用 Sparkle 的主类

问题是 Sparkle,我的应用程序几乎同时启动,但我需要在 Sparkle 窗口中等待用户的操作,然后启动我的应用程序。

感谢您的帮助。

0 投票
1 回答
798 浏览

xml - 是什么其实是为了?

我正在使用 Sparkle 框架进行应用程序更新,我想知道<sparkle:ReleaseNotesLink>标签中的 url 实际用于什么?

根据文档,“您可以为本地化目的提供额外的发行说明。” https://github.com/andymatuschak/Sparkle/wiki/publishing-an-update#localization

我了解将语言代码添加到不同语言的标签中。我不明白的是如何使用或访问链接?RSS 提要中不显示“发行说明”页面的链接。那么,如果只使用一种语言,标签是否有目的?

我认为当有更新显示“此处完成更改日志”或类似内容时,它可能会添加一个链接到显示的描述,但事实并非如此。在网络浏览器中查看 xml 文件时,它也没有显示“链接”,所以我对标签的用途感到困惑。

0 投票
1 回答
384 浏览

xcode - 使用 Github Release 模型来托管应用程序的 Sparkle appcast

Github 的发布功能可以用来托管应用程序的 Sparkle appcast(RSS 提要)吗?目标是消除让另一台服务器参与支持应用程序更新的需要。

挑战在于文件的 URL(由 Xcode 项目的 SUFeedURL 属性引用)在不同版本之间不一致:

有没有办法做到这一点?

0 投票
1 回答
715 浏览

xcode - 我的 Sparkle appcast 是否需要 sparkle:dsaSignature 字段才能生效?

我一直在对“更新错误!”进行故障排除 和 Sparkle 一起玩了几天,进展甚微。我尽可能按照工作样本对我的 appcast 进行建模,但我无法让它工作。最后,我只是决定在我的应用程序中使用示例 appcast 进行测试:

当我把它作为我的 SUFeedURL 时,瞧,它起作用了。所以我将该 XML 的内容复制并粘贴到我服务器上的文件中,但它不起作用。仔细观察差异,唯一的实质性区别是 sparkle:dsaSignature,我没有有效值。

但是,阅读文档后,我的印象是,如果我自己没有用我的证书签署应用程序,我只需要处理 dsaSignature 的东西。当我部署这个应用程序的构建时,我从 Xcode 导出它并使用我的开发身份对其进行签名,然后将其压缩并放在服务器上。

如果我自己签署应用程序,是否需要我的应用程序广播中的 sparkle:dsaSignature 字段?我不知道为什么这不起作用。