2 Stimmen

IOS: -[__NSCFDictionary _expandedCFCharacterSet]: Fehler

Ich arbeite an einer iOS-Anwendung. In einem Szenario sende ich die Telefonnummer und eine Textnachricht wie folgt an den Server

- (void)postData:(NSString *)message :(NSString *)mobileno
{

NSLog(@"postData wird aufgerufen");
@try
{
    NSString *urlString = [NSString stringWithFormat:@"http://anlgelist.commonshell.net/api/account"];
    NSURL *url = [[NSURL alloc] initWithString:urlString];
    NSMutableURLRequest *urlRequest1=[NSMutableURLRequest requestWithURL:url cachePolicy:NSURLRequestUseProtocolCachePolicy timeoutInterval:60.0];
    NSMutableDictionary *postDictionary=[[NSMutableDictionary alloc]init];
  [postDictionary setValue:message forKey:@"Message"];
  [postDictionary setValue:mobileno forKey:@"MobileNumber"];
      SBJsonWriter *jsonWriter = [SBJsonWriter new];
   NSError *error = nil;
    NSLog(@"~~~~~~~~ postDictionary ist %@",postDictionary);

    NSString * jsonDataString =[jsonWriter stringWithObject:postDictionary];

    if ( ! jsonDataString )
    {
        NSLog(@"Fehler: %@", error);
    }

    NSData *requestData = [NSData dataWithBytes:[jsonDataString UTF8String] length:[jsonDataString length]];
    [urlRequest1 setHTTPMethod:@"PUT"];
    [urlRequest1 setValue:@"application/json" forHTTPHeaderField:@"content-type"];
    [urlRequest1 setHTTPBody: requestData];
    connection1 = [NSURLConnection connectionWithRequest:urlRequest1 delegate:self];

}
@catch (NSException *exception)
{
    ////NSLog(@"exception is %@",exception);

    @throw exception;
}

}

Ich rufe kontinuierlich diesen Webdienst auf, um die Details zu senden. Aber manchmal erhalte ich den folgenden Fehler und die App stürzt ab.

: -[__NSCFDictionary _expandedCFCharacterSet]: nicht erkanntes Selektor gesendet an Instanz 0x14fdf350

Ich hatte zuvor noch nie diesen Fehler. Ich habe gegoogelt, aber keine Lösung gefunden.

Der Absturzbericht ist

Bildbeschreibung hier eingeben

-2voto

Satish Punkte 133

Ich bin mir nicht sicher, ob es gut funktionieren wird, aber in Ihrem Fall wurde das Objekt freigegeben und Sie versuchen darauf zuzugreifen. Deshalb habe ich diese Lösung bevorzugt, bitte versuchen Sie es.

SBJsonWriter *jsonWriter = [[SBJsonWriter new]retain];

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X