2012-10-01 12 views
37

Il mio codice funziona come previsto solo che ho bisogno di sbarazzarsi di questo messaggio di avviso. TWTeetComposeViewController deprecato in IOS6. Qualche sostituzione per questo controller di visualizzazione integrato in ios6?TWTweetComposeViewController deprecato in IOS6

Ecco il mio codice di esempio.

if ([TWTweetComposeViewController canSendTweet]) { 
    // Initialize Tweet Compose View Controller 
    TWTweetComposeViewController *vc = [[TWTweetComposeViewController alloc] init]; 
    // Settin The Initial Text 
    [vc setInitialText:@"This tweet was sent using the new Twitter framework available in iOS 5."]; 
    // Adding an Image 
    UIImage *image = [UIImage imageNamed:@"sample.jpg"]; 
    [vc addImage:image]; 
    // Adding a URL 
    NSURL *url = [NSURL URLWithString:@"http://mobile.tutsplus.com"]; 
    [vc addURL:url]; 
    // Setting a Completing Handler 
    [vc setCompletionHandler:^(TWTweetComposeViewControllerResult result) { 
     [self dismissModalViewControllerAnimated:YES]; 
    }]; 
    // Display Tweet Compose View Controller Modally 
    [self presentViewController:vc animated:YES completion:nil]; 
} else { 
    // Show Alert View When The Application Cannot Send Tweets 
    NSString *message = @"The application cannot send a tweet at the moment. This is because it cannot reach Twitter or you don't have a Twitter account associated with this device."; 
    UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"Oops" message:message delegate:nil cancelButtonTitle:@"Dismiss" otherButtonTitles:nil]; 
    [alertView show]; 
} 
+0

Dove hai visto che TWTeetComposeViewController ?? http://developer.apple.com/library/ios/#documentation/Twitter/Reference/TWTweetSheetViewControllerClassRef/Reference/Reference.html – Martin

risposta

68

Ci sono alcuni cambiamenti con l'utilizzo di social network tra iOS 5 & iOS 6.
1. A proposito di biblioteca: in iOS 6 usiamo quadro sociale, invece di Twitter quadro.
2. Utilizziamo SLComposeViewController anziché TWTweetComposeViewController.
3.Please confrontare alcune API con il seguente codice:

if([SLComposeViewController isAvailableForServiceType:SLServiceTypeTwitter]) { 

     SLComposeViewController *controller = [SLComposeViewController composeViewControllerForServiceType:SLServiceTypeTwitter]; 

     SLComposeViewControllerCompletionHandler myBlock = ^(SLComposeViewControllerResult result){ 
      if (result == SLComposeViewControllerResultCancelled) { 

       NSLog(@"Cancelled"); 

      } else 

      { 
       NSLog(@"Done"); 
      } 

      [controller dismissViewControllerAnimated:YES completion:Nil]; 
     }; 
     controller.completionHandler =myBlock; 

     //Adding the Text to the facebook post value from iOS 
     [controller setInitialText:@"Test Post from mobile.safilsunny.com"]; 

     //Adding the URL to the facebook post value from iOS 

     [controller addURL:[NSURL URLWithString:@"http://www.mobile.safilsunny.com"]]; 

     //Adding the Image to the facebook post value from iOS 

     [controller addImage:[UIImage imageNamed:@"fb.png"]]; 

     [self presentViewController:controller animated:YES completion:Nil]; 

    } 
    else{ 
     NSLog(@"UnAvailable"); 
    } 

C'è solo piccole differenze, ma sono più grandi.

PREFERENZE: - Consigli safilsunny: http://www.mobile.safilsunny.com/integrating-facebook-ios-6/

Grazie,

27

Sì, si suppone di utilizzare il Social Framework su iOS 6. Questo è grazie all'integrazione di Facebook oggi presente su iOS. Potrai utilizzare Twitter e Facebook da lì.