Attualmente sto utilizzando SLComposeViewController per pubblicare il punteggio di un utente su Twitter o Facebook (a seconda del pulsante che toccano). Quando condividono, vengono ricompensati con valuta virtuale. Il problema che sto affrontando è che mi dirà solo se un utente ha premuto Invia o Annulla. Come posso verificare se il tweet è effettivamente pubblicato su Twitter? Ciò aiuterà a combattere i casi in cui un utente tenta di inviare lo stesso tweet due volte (cosa che Twitter non consente).iOS 7 SLComposeViewController: Controlla se il tweet è stato effettivamente pubblicato?
Questo è il mio codice per ora:
//Check if user can send tweet
if ([SLComposeViewController isAvailableForServiceType:SLServiceTypeTwitter]) {
SLComposeViewController *tweetSheet = [SLComposeViewController composeViewControllerForServiceType:SLServiceTypeTwitter];
tweetSheet.completionHandler = ^(SLComposeViewControllerResult result) {
switch(result) {
//This means the user cancelled without sending the Tweet
case SLComposeViewControllerResultCancelled:
NSLog(@"User Canceled");
break;
//This means the user hit 'Send'
case SLComposeViewControllerResultDone:
NSLog(@"User Tapped Send");
dispatch_after(dispatch_time(DISPATCH_TIME_NOW, 0 * NSEC_PER_SEC), dispatch_get_main_queue(), ^{
//Show alert & reward user here
break;
}
dispatch_async(dispatch_get_main_queue(), ^{
[self dismissViewControllerAnimated:NO completion:^{
NSLog(@"Tweet Sheet has been dismissed.");
}];
});
};
[tweetSheet setInitialText:[NSString stringWithFormat:@"Just scored %ld %@! I challenge anyone to try & beat it! ", (long)scene.score, suffix]];
[tweetSheet addURL:[NSURL URLWithString:@"http://appstore.com/appurlhere"]];
[self presentViewController:tweetSheet animated:YES completion:^{
NSLog(@"Tweet sheet has been presented.");
}];
}
else {
//Something went wrong, aka no network connection
};
Come posso controllare se il tweet è stato effettivamente pubblicato (Usando il quadro sociale).
Hai mai scoperto se fosse possibile? – DelightedD0D