Обнаружено неверное значение NSStringEncoding 0x0000 (с использованием ASIHTTPRequest)

Я использую ASIHTTPRequst в своем приложении, и у меня возникают некоторые проблемы, но только на определенных устройствах. В некоторых случаях я получаю следующую ошибку :

" Обнаружено неверное значение NSStringEncoding 0x0000. Предполагая, что NSASCIIStringEncoding. В ближайшем будущем остановит это поведение сопоставления совместимости "

У меня есть ограниченные возможности для тестирования, потому что оно работает на всех моих внутренних тестовых устройствах, но проблема все еще возникает на одном или нескольких моих клиентах тестовые телефоны. Это также может быть случай, когда телефон подключен к сотовой сети, поскольку он, похоже, работает по Wi-Fi.

Кто-нибудь знает, что может вызвать проблему? Я вижу, есть вопросы аналогичного типа, но мой код выглядит правильным как на основании ответов на другие вопросы, так и на сайте ASIHTTPRequest.

Изменить При возникновении ошибки ответ от сервера не поступает, поэтому пользователь застревает при регистрации / входе в систему.

urlEncodeValue:

- (NSString *)urlEncodeValue:(NSString *)str
{
    NSString *result = (NSString *) CFURLCreateStringByAddingPercentEscapes(kCFAllocatorDefault, (CFStringRef)str, NULL, CFSTR(":/?#[]@!$&’()*+,;="), kCFStringEncodingUTF8);
    return [result autorelease];
}

Фрагмент кода ASIHTTPRequest:

    NSString *encodedUrlAdress = [NSString stringWithFormat:@"%@user/register/%@/%@/%@/%d/%@/%@/%@/%@", 
                                   kUserServerAddress, 
                                   [self urlEncodeValue:_firstName], 
                                   [self urlEncodeValue:_lastName], 
                                   [self urlEncodeValue:_phoneNumber], 
                                   _sex, 
                                   [self urlEncodeValue:_birthDate], 
                                   [self urlEncodeValue:_address], 
                                   [self urlEncodeValue:_postalNumber]];    
    NSLog(@"encodedUrlAdress: %@", encodedUrlAdress);

    NSURL *url = [NSURL URLWithString:encodedUrlAdress];
    ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:url];
    [request startSynchronous];
    NSError *error = [request error];

    if (!error) {
// do stuff
}
12
задан Madoc 15 November 2011 в 14:45
поделиться