ファイルをダウンロードするためにそのようなことをしています。ダウンロードの進行状況バーを作成するために使用したいデリゲートの 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 デリゲートが戻ってこないことだと思いますか?