0

プロジェクトを RestKit 0.10 から 0.20.2 にアップグレードしています。成功しました。ここで、URL から zip ファイルをダウンロードして展開する必要があります。そのための方法が RestKit に見つかりませんでした。誰でもこれについて知ることができますか。

ありがとう

4

2 に答える 2

2

Restkit 0.2 は AFNetworking を使用します。プロジェクトで Restkit を構成すると、AFNetworking も使用できるようになります。したがって、次のようにファイルをダウンロードできます。

- (void)downloadWithOutputPath:(NSString *)aPath progress:(void(^)(NSUInteger, long long , long long ))onProgress success:(void (^)(id<Attachment>))onSuccess error:(void (^)(NSError *))onError
{

    NSURLRequest *request = [NSURLRequest requestWithURL:self.url];
    AFHTTPRequestOperation *operation = [self.client HTTPRequestOperationWithRequest:request
                                                                        success:^(AFHTTPRequestOperation *operation, id responseObject) {

                                                                            NSURL *url = [NSURL fileURLWithPath:aPath];
                                                                            NSError *error;
                                                                            [self skipBackupForURL:url error:&error];
                                                                            onSuccess(self);

                                                                        } failure:^(AFHTTPRequestOperation *operation, NSError *error) {
                                                                            onError(error);
                                                                        }];
    [operation setDownloadProgressBlock:onProgress];

    operation.outputStream = [NSOutputStream outputStreamToFileAtPath:aPath
                                                               append:NO];
    [operation start];
}

また、ダウンロードしたファイルをバックアップから除外するようにマークする必要があることに注意してください。

- (void)skipBackupForURL:(NSURL *)anURL error:(NSError **)anError
{
    [anURL setResourceValue:[NSNumber numberWithBool:YES]
                             forKey:NSURLIsExcludedFromBackupKey error:anError];
}

ファイルの解凍には、https://github.com/soffes/ssziparchiveを使用します

于 2013-09-19T07:52:36.570 に答える
2

RestKit から: Reskit リンク

「RestKit は、Core Data とシームレスに統合する強力なオブジェクト マッピング エンジンと、AFNetworking の上に構築された HTTP 要求と応答をマッピングするためのネットワーク プリミティブのシンプルなセットを提供します。」

ダウンロードには AFNetworking を使用できますAFNetworking リンク 解凍には zipArchive を使用できます witch は優れています。zipアーカイブ

于 2013-09-19T07:00:58.377 に答える