これは漠然とした質問だと思いますが、他の誰かがこれを観察したのではないかと思います。これがNSURLConnectionを呼び出すための私のコードです
// Get data from server
NSString *host = @"www.hostname.com";
NSString *urlString = [NSString stringWithFormat:@"/theRestOfTheURL"];
NSURL *url = [[NSURL alloc] initWithScheme:@"http" host:host path:urlString];
DLog(@"URL is %@", url);
// Create the NSMutableData to hold the received data.
// receivedData is an instance variable declared elsewhere.
receivedData_ = [[NSMutableData data] retain];
NSURLRequest *theRequest=[NSURLRequest requestWithURL:url
cachePolicy:NSURLRequestUseProtocolCachePolicy
timeoutInterval:15.0];
// create the connection with the request
// and start loading the data
self.powerPlantDataConnection = [[[NSURLConnection alloc] initWithRequest:theRequest delegate:self] autorelease];
[url release];
アプリを最初にロードしたときは正常に動作し、問題なく繰り返し呼び出すことができます。しかし、アプリを閉じて再度開くと、
(void)connection:(NSURLConnection *)connection didFailWithError:(NSError *)error
デリゲートメソッドは毎回呼び出され、リクエストがタイムアウトしたエラーメッセージが表示されます。2つの異なるURLを呼び出す2つの異なるViewControllerがあり、アプリを閉じて再度開いた後、両方が毎回失敗します。
誰かがこれが起こっているかもしれない理由を考えることができますか?どこから探し始めるかわかりません。リクエストのタイムアウトエラーの原因は何でしょうか?私が最初にアプリを実行したときにそれが機能するので、リクエストに問題はないはずです。
シミュレーターではなく、デバイスでのみこの問題が発生しているように見えることを追加するために編集しました。