私は非常に奇妙な問題があります。Androidでは、API呼び出しには300〜500ミリ秒、iOSでは1.5〜2.5秒かかります。私はサーバ、デバイス固有の問題、インターネット接続などの依存関係を取り除いています。私はサンプルURLにヒットする非常に簡単なサンプルコードを持っています。私にとっては、シミュレータ上でさえ約2秒かかります。ネットワークコールはAndroidよりもiOSで多くの時間がかかります
dispatch_async(dispatch_get_global_queue(0, 0), ^{
NSLog(@"start");
// 1
NSURL *url = [NSURL URLWithString:@"https://httpbin.org/get"];
NSURLSessionConfiguration *config = [NSURLSessionConfiguration defaultSessionConfiguration];
NSURLSession *session = [NSURLSession sessionWithConfiguration:config];
// 2
NSMutableURLRequest *request = [[NSMutableURLRequest alloc] initWithURL:url];
[request setValue:@"" forHTTPHeaderField:@"Accept-Encoding"];
request.HTTPMethod = @"GET";
[[session dataTaskWithRequest:request
completionHandler:^(NSData *data, NSURLResponse *response, NSError *error) {
// Handle response here
NSLog(@"end - %ld", (long)[(NSHTTPURLResponse*)response statusCode]);
}] resume];
});
AFNetworkingライブラリとASSIHTTPライブラリも使用してみましたが、違いはありません。私もヘッダーをチェックしており、AndroidとiOSの両方で同じです。私はここで何か何か間違っているのですか?
こんにちはため
NSURLSession
のインスタンスを作成する必要はありません、私は単一のAPIを使用してコードを試してみましたが、それはまだそれだけで500ミリ秒を示し、サーバでの応答時間をチェック、1.62秒かかります。どんな解決策ですか? –