帮助制作自动更新程序

时间:2011-09-02 23:32:17

标签: objective-c cocoa auto-update

我正在创建一个自动更新的应用。我想要检查文件是否存在于域中的所有拳头,我以前从未做过类似的事情所以我找到了一个代码并对其进行了调整以适应我的项目。问题是,我总是认为该文件存在。

-(BOOL) webFileExists {

int fcurVer = [[self getCurrentVersion] intValue];
fcurVer++;
NSLog(@"%i", fcurVer);
NSString *url = [NSString stringWithFormat:@"http://www.site.org/folder/version/%i.dmg", fcurVer];

NSURLRequest* request = [NSURLRequest requestWithURL:[NSURL URLWithString:url] cachePolicy:NSURLRequestUseProtocolCachePolicy timeoutInterval:5.0];
NSHTTPURLResponse* response = nil;
NSError* error = nil;
[NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&error];
NSLog(@"statusCode = %i", [response statusCode]);

if ([response statusCode] == 404) {
    return NO;

}
else {
    return YES;
}

}

有什么想法吗?顺便说一句,如果有人也知道如何下载文件,并安装它替换旧文件,请帮帮我。

1 个答案:

答案 0 :(得分:5)

Sparkle已经解决了您的问题。它被广泛使用,经过充分测试并受到用户信赖,为什么要重新发明这个轮子?

此外,它是开源的hosted on github,所以你可以看看它是如何实现的。