使用 appcast URL 初始化 Sparkle (OS X)
Initialise Sparkle (OS X) with appcast URL
我正在使用 Sparkle 框架为我的 OS X 桌面应用程序发布更新。为了能够将 Sparkle 指向不同的系统 (staging/production),我覆盖了 Info.plist 文件中的 appcast URL 条目,并在需要 URL 时将更新的文件保存到光盘] 改变。这有一个缺点,它不会立即生效,但我必须重新启动应用程序才能让 Sparkle 使用 plist 文件中更新的条目。
问题:
我没有找到关于是否可以在初始化时将 appcast URL 传递给 Sparkle 的任何资源,因此它不会查找之前从 plist 文件加载的 URL。有人可以帮忙吗?
原来如此简单:
// InitSparkle.mm
#include "InitSparkle.h"
#import <Cocoa/Cocoa.h>
#import <AppKit/AppKit.h>
#import <Sparkle/Sparkle.h>
SUUpdater* suupdater = NULL;
void initSparkle(const char* feedUrl)
{
suupdater = [[SUUpdater sharedUpdater] retain];
[suupdater setAutomaticallyChecksForUpdates:YES];
suupdater.feedURL = [NSURL URLWithString:[NSString stringWithUTF8String:feedUrl]];
[suupdater checkForUpdates:NULL];
}
只需将提要的 URL 放入 SUUpdater 对象即可。
我正在使用 Sparkle 框架为我的 OS X 桌面应用程序发布更新。为了能够将 Sparkle 指向不同的系统 (staging/production),我覆盖了 Info.plist 文件中的 appcast URL 条目,并在需要 URL 时将更新的文件保存到光盘] 改变。这有一个缺点,它不会立即生效,但我必须重新启动应用程序才能让 Sparkle 使用 plist 文件中更新的条目。
问题: 我没有找到关于是否可以在初始化时将 appcast URL 传递给 Sparkle 的任何资源,因此它不会查找之前从 plist 文件加载的 URL。有人可以帮忙吗?
原来如此简单:
// InitSparkle.mm
#include "InitSparkle.h"
#import <Cocoa/Cocoa.h>
#import <AppKit/AppKit.h>
#import <Sparkle/Sparkle.h>
SUUpdater* suupdater = NULL;
void initSparkle(const char* feedUrl)
{
suupdater = [[SUUpdater sharedUpdater] retain];
[suupdater setAutomaticallyChecksForUpdates:YES];
suupdater.feedURL = [NSURL URLWithString:[NSString stringWithUTF8String:feedUrl]];
[suupdater checkForUpdates:NULL];
}
只需将提要的 URL 放入 SUUpdater 对象即可。