0

ファイルをダウンロードするためにそのようなことをしています。ダウンロードの進行状況バーを作成するために使用したいデリゲートの didReceiveData の代わりに、すべてが正しく機能しています。

    NSURL *URL = [NSURL URLWithString:path];
    RKRequest *downloadRequest = [RKRequest requestWithURL:URL];

    downloadRequest.delegate = self;
    downloadRequest.method = RKRequestMethodGET;
    [downloadRequest sendSynchronously];

その後、次のデリゲートが呼び出されます。

- (void)request:(RKRequest *)request didLoadResponse:(RKResponse *)response
{
    NSLog(@"TEST didLoadResponse");
}

しかし、デリゲート didReceiveData は呼び出されません。

- (void)request:(RKRequest *)request didReceiveData:(NSInteger)bytesReceived totalBytesReceived:(NSInteger)totalBytesReceived totalBytesExpectedToReceive:(NSInteger)totalBytesExpectedToReceive
{
    NSLog(@"TEST didReceiveData");
}

誰でもアイデアはありますか?私は本当にたくさん試しましたが、間違いは見つかりませんでした。おそらくそれは、私が私のRKRequest?

編集:それに変更すると、動作します:

NSURL *URL = [NSURL URLWithString:path];

RKClient *client = [[RKClient alloc] initWithBaseURL:URL];
RKRequest *downloadRequest = [client get:@"" delegate:self];
[downloadRequest sendSynchronously];

変?

EDIT2: 2番目の解決策では、いくつかのスレッドの問題が発生したため、問題は、スレッドをロックする同期要求を送信しているため、didReceiveData デリゲートが戻ってこないことだと思いますか?

4

0 に答える 0