Форум программистов, компьютерный форум CyberForum.ru

Программирование iOS/iPhone

Войти
Регистрация
Восстановить пароль
 
urivskay
Сообщений: n/a
#1

соединение с интернет - Программирование iOS/iPhone

08.06.2012, 13:21. Просмотров 929. Ответов 1
Метки нет (Все метки)

Здравствуйте ребята. Я хотела обратиться к вам за помощью по следующему вопросу:
написала класс который отправляет запросы удаленному серверу и получает ответы:
Objective-C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
NSString *hash = [NSString md5String:pass];  // можно так, а можно и по другому как дальше
    NSString *params = [NSString localizedStringWithFormat:@"?r=client/beginsession&login=%@&password=%@",login,[pass MD5]];
    NSString *urlRequest = [url stringByAppendingString:params];
    NSURL *urlPath = [NSURL URLWithString: urlRequest]; 
    [[UIApplication sharedApplication] setNetworkActivityIndicatorVisible: YES];
    NSMutableURLRequest *request=[NSMutableURLRequest requestWithURL: urlPath
                                           cachePolicy:NSURLRequestUseProtocolCachePolicy
                                       timeoutInterval:5.0];
    NSURLConnection *connect = [NSURLConnection connectionWithRequest:request delegate:self];
    
    if (request == nil)
        label.text = @"Нет соединения с сервером.";
    
    if (connect){
        self.buffer = [NSMutableData data];
    }
    else {
        label.text = @"Нет соединения с сервером.";
    }
 
/*Реализовала следующие функции для получения данных*/
-(void) connection:(NSURLConnection*)connection didReceiveData:(NSData*)data{
    [self.buffer appendData:data];
}
 
-(void) connectionDidFinishLoading:(NSURLConnection*) connection{
    [[UIApplication sharedApplication] setNetworkActivityIndicatorVisible: NO];
    NSString *response = [[NSString alloc] initWithData:buffer encoding:NSASCIIStringEncoding];
    self.label.text = response;
}
 
-(void) connection:(NSURLConnection*)connection DidFailWithError:(NSError*) error{
    self.label.text = @"Ошибочка...";
    [[UIApplication sharedApplication] setNetworkActivityIndicatorVisible: NO];
}
 
-(void) connection:(NSURLConnection*)connection timeoutInterval:(NSError*) error {
    self.label.text = @"Время соединения с сервером истекло";
}
Работаю на виртуальной машине. Версия xCode 3.1.3 ну думаю это не важно.
Если я отключаю соединение с интернет, у меня почему-то не вылетают ошибки..Такое впечатление что я не попадаю в функции вывода ошибок. Подскажите, пожалуйста, почему это происходит?

Добавлено через 22 минуты
Нашла ошибку. В названии функ-и DidFailWithError надо с маленькой буквы.
но почему-то приложение теперь падает когда попадает на строчку в этой функ-и :
self.label.text = @"Ошибочка...";
Кто-нибудь может объяснить почему и как исправить это ? я так понимаю он не видит указатель self ? Почему тогда в других методах всё нормально?

Добавлено через 12 минут
как-то странно получается, всё что я не напишу в этой функции приводит к падению приложения...
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.06.2012, 13:21     соединение с интернет
Посмотрите здесь:

Ubuntu Linux интернет соединение
Соединение с БД через интернет C#
отсутствует интернет соединение...
Проверить интернет соединение C# WPF
Обрывается интернет-соединение Wi-fi
Objective-C Запись интернет радио
Objective-C Синхронизация через интернет
Интернет соединение
Отключается интернет соединение
Как создать коммутируемое интернет соединение в Windows при доступе в интернет через роутер? Сети
Создание клиента для Интернет-Магазина
Как включать/выключать интернет на симуляторе iOS в XCode?

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
zulkis
681 / 608 / 38
Регистрация: 13.01.2011
Сообщений: 1,724
09.06.2012, 09:25     соединение с интернет #2
self это какой класс, давайте тогда развернутый код?
Yandex
Объявления
09.06.2012, 09:25     соединение с интернет
Ответ Создать тему
Опции темы

Текущее время: 08:14. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru