2

私はこの公式文書が指示したことを正確に実行しました。テスト用にコンソールプロジェクトを作成しました。次に、RequestSenderというクラスを作成し(以下のコードを参照)、main関数でこのクラスのインスタンスを作成しました。

RequestSender.h:

#import <Foundation/Foundation.h>
@interface RequestSender : NSObject <NSURLConnectionDelegate> {
    NSMutableData* d;
}
@end

RequestSender.m:

#import "RequestSender.h"

@implementation RequestSender

- (id)init {
    self = [super init];
    if (self) {
        NSString* s = @"http://www.apple.com/";
        NSURL* u = [[NSURL alloc] initWithString:s];
        NSURLRequest* r = [[NSURLRequest alloc] initWithURL:u];
        NSURLConnection* c = [[NSURLConnection alloc] initWithRequest:r delegate:self];
        if (c) {
            d = [NSMutableData data];
        }

        return self;
    } else {
        return nil;
    }
}

- (void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response {
    [d setLength:0];
}

- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data {
    [d appendData:data];
}

- (void)connection:(NSURLConnection *)connection didFailWithError:(NSError *)error {

}

- (void)connectionDidFinishLoading:(NSURLConnection *)connection {
}


@end

これは間違いなくメインスレッドとデフォルトの実行ループで実行されます。ただし、どの委任メソッドも呼び出されません。

私は多くのテストを行い、多くの投稿を読みましたが、まだ手がかりがありません。

私を助けてください。これは私を怒らせています。ありがとう!

4

1 に答える 1