Ho un UIActivityViewController che condivide testo e immagine su Facebook/Twitter/Email, ma funziona solo su iOS 6+ .. È possibile prendere la versione iOS in esecuzione sul dispositivo e fare un Dichiarazione IF per evitare arresti anomali in iOS 5? Se iOS6, fai il seguente codice, altrimenti fai qualcos'altro ...?se iOS 6 [fai questo] altro iOS 5 [farlo]? - UIActivityViewController
-(void)shareMenu
{
NSString *textToShare = @"Text that will be shared";
UIImage *imageToShare = [UIImage imageNamed:@"share_picture.png"];
NSArray *itemsToShare = [[NSArray alloc] initWithObjects:textToShare, imageToShare, nil];
UIActivityViewController *activityVC = [[UIActivityViewController alloc] initWithActivityItems:itemsToShare applicationActivities:nil];
activityVC.excludedActivityTypes = [[NSArray alloc] initWithObjects: UIActivityTypePrint, UIActivityTypeCopyToPasteboard, UIActivityTypeAssignToContact, UIActivityTypeSaveToCameraRoll, UIActivityTypeMessage, UIActivityTypePostToWeibo, nil];
[self presentViewController:activityVC animated:YES completion:nil];
}
in generale (non questo caso specifico), trovo di solito è meglio usare 'respondsToSelector' per determinare quale versione di una classe iOS ho a che fare, in base a quali metodi esso supporta. Tra le altre cose questo aiuta a documentare la dipendenza specifica. –