ATS разрешает выдачу произвольных грузов - PullRequest
0 голосов
/ 01 октября 2018

Мое приложение отлично работает в iOS11, но не в iOS12.У меня есть Разрешить Произвольные Нагрузки в ДА.Я пробовал все в ATS от разрешения небезопасных соединений и т. Д., Но ничего не работает.Вот проблема.

У меня есть программа для ПК, которая транслирует IP-адрес компьютера.В моем приложении я ввожу этот IP-адрес и устанавливаю соединение с настольной программой.Затем мое приложение делает фотографию и отправляет ее в настольную программу.Первая передача работает, затем следующая фотография вылетает из программы рабочего стола, но приложение все еще работает.Я получаю эту ошибку

App Transport Security заблокировал открытый текстовый HTTP (http://) загрузка ресурса, поскольку она небезопасна.

Вот код, который отправляет файл на сервер.

- (void)print {
NSString *printip = [NSUserDefaults standardUserDefaults] valueForKey:@"printip"];

NSString * valueToSave1 = [NSString stringWithFormat:@"http://%@:45500", printip];


for (int i = 0; i < self.arrSlidshowImg.count; i++) {
    _flippedImage = [UIImage imageWithData:[_arrSlidshowImg objectAtIndex:i]];

};

dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
    dispatch_async(dispatch_get_main_queue(), ^{

        if ([valueToSave1 length] > 0) {
            if ([[NSUserDefaults standardUserDefaults] boolForKey:@"isprintconnected"]) {
                dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{

                    dispatch_async(dispatch_get_main_queue(), ^{
                        NSURLSessionConfiguration *defaultConfigObject = [NSURLSessionConfiguration defaultSessionConfiguration];
                        NSURLSession *defaultSession = [NSURLSession sessionWithConfiguration: defaultConfigObject delegate: nil delegateQueue: [NSOperationQueue mainQueue]];

                        NSURL * url = [NSURL URLWithString:valueToSave1];
                        NSMutableURLRequest * urlRequest = [NSMutableURLRequest requestWithURL:url];
                        NSData *imageData = UIImageJPEGRepresentation(self.snapshotImage, _photoquality);

                        [urlRequest setHTTPMethod:@"POST"];
                        [urlRequest setHTTPBody:imageData];

                        NSURLSessionDataTask * dataTask =[defaultSession dataTaskWithRequest:urlRequest
                                                                           completionHandler:^(NSData *data, NSURLResponse *response, NSError *error) {
                                                                               NSLog(@"Response:%@ %@\n", response, error);
                                                                               if(error == nil)
                                                                               {
                                                                                   NSString * text = [[NSString alloc] initWithData: data encoding: NSUTF8StringEncoding];
                                                                                   NSLog(@"Data = %@",text);
                                                                               }

                                                                               else
                                                                               {

                                                                               }
                                                                           }];
                        [dataTask resume];
                    });

                });


            }




        }

    });

});
}
...