Implementare le API di un servizio web non è mai semplice, sopratutto se si tratta di un social network molto complesso come Twitter.
Fortunatamente Apple, con iOS5, ci viene in grosso aiuto occupando del dialogo con il server e l’interfaccia grafica già ottimizzata con le funzioni principali.
Iniziamo
Innanzitutto dopo aver creato un nuovo progetto del tipo view-based application dobbiamo importare i nuovi framework
messi a disposizione: Twitter e Accounts che ci consentiranno di poter accedere al server tramite richiesta POST ed accedere a tutti gli account Twitter salvati.
Quindi li importiamo nel nostro file .h
[code lang=”obj-c”]#import
#import [/code]
ed aggiungiamo le azioni che andremo ad implementare
[code lang=”obj-c”]- (IBAction)sendEasyTweet:(id)sender;
– (void)displayText:(NSString *)text;
[/code]
Adesso tramite interface builder costruiamo la nostra interfaccia, in realtà è un parolone perché ci basta solo un pulsante a cui collegare l’azione di “Tweet” ed una textView per visualizzare il risultato.
Spostiamoci nel file d’implementazione .m ed iniziamo a scrivere quelle poche righe di codice….
[code lang=”obj-c”]- (IBAction)sendEasyTweet:(id)sender {
TWTweetComposeViewController *tweetViewController = [[TWTweetComposeViewController alloc] init];
[tweetViewController setInitialText:@"Ho terminato con successo il tutorial di iprog.it"];
[tweetViewController setCompletionHandler:^(TWTweetComposeViewControllerResult result) {
NSString *output;
switch (result) {
case TWTweetComposeViewControllerResultCancelled:
output = @"Tweet annullato.";
break;
case TWTweetComposeViewControllerResultDone:
output = @"Tweet postato.";
break;
default:
break;
}
[self performSelectorOnMainThread:@selector(displayText:) withObject:output waitUntilDone:NO];
[self dismissModalViewControllerAnimated:YES];
}];
[self presentModalViewController:tweetViewController animated:YES];
}
– (void)displayText:(NSString *)text {
self.outputTextView.text = text;
}[/code]
Abbiamo praticamente finito. Ovviamente le potenzialità del nuovo framework non si fermano qui, ma per iniziare a fare qualcosa è più che sufficiente.