FTPサーバーからファイルをアップロード/ダウンロードする必要があるiPad用のアプリを書いています。では、そのユーザーが入力したFTP URLが正しく、到達可能かどうかを確認するにはどうすればよいですか?私はファイルのダウンロードにAFNetworkingを使用しているので、AFNetworkingに入れるUIAlertView
とsetCompletionBlockWithSuccess: failure^
、かなり長い時間のタイムアウト後に実行されます。何か案は?手伝ってくれてありがとう!
2 に答える
1
わかりました、それで私はおそらく最良の解決策ではないことを見つけました、しかしそれは実際にはかなりうまくいきます:
- (BOOL) isFTPReachable {
NSURL *url = [NSURL URLWithString:@"ftp://anonymous@ftpserver"];
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url];
[request setHTTPMethod:@"HEAD"];
[request setTimeoutInterval:10];
NSURLResponse *response;
NSError *error;
NSData *myData = [NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&error];
if (myData) {
return true;
} else {
return false;
}
}
- (void) startSync {
if ([self isFTPReachable]) {
[self startDownload];
}
else {
UIAlertView *alarma = [[UIAlertView alloc] initWithTitle:@"Connection error" message:nil delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil, nil];
[alarma show];
}
}
于 2013-02-07T01:55:54.120 に答える