4

是否有任何文档说明当 Appstore 上的应用程序更新时,Appstore 本身会向用户发送有关更新的推送通知?

4

1 回答 1

9

您可以使用Search API做到这一点。在您的应用中,启动后,在 AppStore 上查看您的应用的最新版本。像这样:

- (void) checkForUpdates
{
    NSString *jsonUrl = @"http://itunes.apple.com/search?term=yourAppName&entity=software&limit=1";
    NSData *jsonData = [NSData dataWithContentsOfURL:[NSURL URLWithString:jsonUrl]];

    JSONDecoder *jsonKitDecoder = [JSONDecoder decoderWithParseOptions:JKParseOptionNone];
    NSObject *jsonObject = [jsonKitDecoder objectWithData:jsonData error:nil];
    int results = [[jsonObject valueForKey:@"resultCount"] intValue];

    if(results >0) // has results
    { 
        NSArray *results = [jsonObject valueForKey:@"results"];
        for(NSObject *aResult in results) 
        {
            NSString    *appStoreVersion = [aResult valueForKey:@"version"];
            NSString    *localVersion    = [[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleVersion"];

            if(![appStoreVersion isEqualToString:localVersion])
            {
                 //there is an update available. Go crazy.
            }
        }
     }
}

我为此使用了 JSONKit。你可以使用任何你喜欢的库来解析 Apple 检索到的 JSON。

注意:您可以使用它来通知用户在他打开应用程序时有更新。如果您想要在更新上线后立即通知用户的内容,则需要推送通知。

希望这可以帮助。

干杯!

于 2012-07-02T14:07:53.857 回答