Training „git“
07.10.2010 - 08.10.2010, Essen
Training „Eclipse RCP“
28.03.2011 - 01.04.2011, Dortmund

Backend-Kommunikation

HTTP(S)-Kommunikation

Beispiel: Asynchrone Requests mit NSURLConnection 1/2

- (void) loadData {
    [UIApplication sharedApplication].networkActivityIndicatorVisible = YES;
    NSURL* url = [NSURL URLWithString:@"http://www.example.com/"];
    NSURLRequest *request = [NSURLRequest requestWithURL:url];
    self.connection =
        [[[NSURLConnection alloc] initWithRequest:request delegate:self] autorelease];
}

#pragma mark NSURLConnection delegate methods

- (void) connection:(NSURLConnection *)con didReceiveResponse:(NSURLResponse *)resp {
    self.data = [NSMutableData data];
}

Beispiel: Asynchrone Requests mit NSURLConnection 2/2

- (void) connection:(NSURLConnection *)connection didReceiveData:(NSData *)aData {
    [self.data appendData:aData];
}

- (void) connection:(NSURLConnection *)connection didFailWithError:(NSError *)error {
    [UIApplication sharedApplication].networkActivityIndicatorVisible = NO;
    NSLog(@"URL connection failed with %@, %@", error, [error userInfo]);
    self.data = nil;
    self.connection = nil;
}

- (void) connectionDidFinishLoading:(NSURLConnection *)connection {
    [UIApplication sharedApplication].networkActivityIndicatorVisible = NO;
    // parse data here
    self.data = nil;
    self.connection = nil;
}

TouchJSON

Alternativen zur Kommunikation / Serialisierung

Reachability

Reachability

Tipps & Tricks: Webserver ad hoc starten

cd webroot/
python /cd/toolbox/scripts/www_here.py

Weiterführende Informationen 1/2

Weiterführende Informationen 2/2

Über Ihre Kommentare und Hinweise freue ich mich sehr:
Ralf Ebert | iPhone-Entwicklung | Backend-Kommunikation