Falsche NSStringEncoding Wert 0x0000 erkannt (mit ASIHTTPRequest)

Ich bin mit ASIHTTPRequst in meiner Anwendung, und ich habe einige Probleme, aber nur auf bestimmten Geräten. In einigen Fällen bekomme ich die folgende Fehlermeldung:

"
Falsche NSStringEncoding Wert 0x0000 erkannt. Vorausgesetzt, NSASCIIStringEncoding. Aufhören wird diese Kompatibilität mapping-Verhalten in die nahe Zukunft
"

Ich habe nur begrenzte Möglichkeiten, um dieses zu testen, weil es funktioniert auf allen meinen internen test-Geräte, aber das problem immer noch Auftritt, auf eine oder mehrere meiner Kunden test-Handys. Es kann auch der Fall, wenn sich das Telefon mit dem Mobilfunknetz verbunden, als es scheint zu funktionieren über WLAN.

Weiß jemand, was könnte das problem verursachen? Ich sehe, es gibt ähnliche Fragen, aber mein code sieht wie Ihr beide richtig von den anderen Fragen beantwortet und das ASIHTTPRequest-Website.

Bearbeiten
Wenn der Fehler keine Antwort vom server empfangen wird, sodass der Benutzer bleibt am register/login.

urlEncodeValue:

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

ASIHTTPRequest-code-snippet:

    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
}
Sie sollten zeigen Sie den code für Ihre urlEncodeValue Methode
danke Tim, seine includded jetzt
Sehr gute Frage, Madoc
Sieht alles gut hier soweit ich sehen kann: Wie sicher sind Sie, dass das problem in diesem Teil des Codes? Sie sagen, dass keine Antwort vom server empfangen wird. Haben Sie sichergestellt, dass die Nachricht entweder gesendet oder nicht gesendet, um dem server?
ich habe mich durch den code Schritt für Schritt und die Fehlermeldung kommt, wenn die Anfrage mal an der Linie: ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:url]; EDIT: Jedoch nur kurzzeitig auf einem der test-Handys für meine Kunden, nicht alle von unseren Handys haben dieses problem, also es ist sehr seltsam:\ ich kann nicht reproduzieren Sie das problem jetzt auf unsere Handys

InformationsquelleAutor Madoc | 2011-11-15

Schreibe einen Kommentar