SLComposeViewController автоматически закрывается при публикации на Facebook в iOS 8

Я использую SLComposeViewController для обмена в Twitter и Facebook в моем приложении. Это нормально работает для Twitter, но для Facebook SLComposeViewController автоматически закрывается при выборе местоположения. Это проблема iOS 8. Работает нормально на iOS7.

 if ([SLComposeViewController isAvailableForServiceType:SLServiceTypeFacebook])
{
            self.fbSheet = [SLComposeViewController composeViewControllerForServiceType:SLServiceTypeFacebook];

            SLComposeViewControllerCompletionHandler __block completionHandler=^(SLComposeViewControllerResult result){

                //  [fbSheet dismissViewControllerAnimated:YES completion:nil];

                switch(result){
                    case SLComposeViewControllerResultCancelled:
                    default:
                    {
                        NSLog(@"Cancelled.....");

                    }
                        break;
                    case SLComposeViewControllerResultDone:
                    {
                        NSLog(@"Posted....");
                        if([NetworkManager SharedInstance].isInternetReachable){
                        UIAlertView *alertView = [[UIAlertView alloc]
                                                  initWithTitle:@"Success"
                                                  message:@"Feeds shared successfully."
                                                  delegate:self
                                                  cancelButtonTitle:@"OK"
                                                  otherButtonTitles:nil];
                        [alertView show];
                        }

                    }
                        break;
                }};


            [self.fbSheet setCompletionHandler:completionHandler];
            NSString *fbString= self.titleString;
            [self.fbSheet setInitialText:fbString];
            [self.fbSheet addURL:[NSURL URLWithString:self.urlString]];
            [self presentViewController:self.fbSheet animated:YES completion:nil];


        }

Элемент управления автоматически переходит в блок обработчика завершения с отмененным результатом. Я просмотрел несколько постов о том, что это проблема 64-битной архитектуры. Пожалуйста, помогите мне с этим, если кто-то сталкивается с той же проблемой.

1 ответ

  - (IBAction)facebookPost:(id)sender {

if ([SLComposeViewController isAvailableForServiceType:SLServiceTypeFacebook]) {

    self.fbSheet = [SLComposeViewController composeViewControllerForServiceType:SLServiceTypeFacebook];

    [self.fbSheet setInitialText:@"Social Framework test"];

    [self.fbSheet addImage:[UIImage imageNamed:@"imagename.png"]];

    [self.fbSheet addURL:[NSURL URLWithString:@"URL_NAME"]];

    [self.fbSheet setCompletionHandler:^(SLComposeViewControllerResult result) {

         switch (result) {
             case SLComposeViewControllerResultCancelled:
                 NSLog(@"Post Canceled");
                 break;
             case SLComposeViewControllerResultDone:
             {
                 NSLog(@"Post Sucessful");
                NSLog(@"Posted....");
                    if([NetworkManager SharedInstance].isInternetReachable){
                    UIAlertView *alertView = [[UIAlertView alloc]
                                              initWithTitle:@"Success"
                                              message:@"Feeds shared successfully."
                                              delegate:self
                                              cancelButtonTitle:@"OK"
                                              otherButtonTitles:nil];
                    [alertView show];
                    }
                }
                 break;

             default:
                 break;
         }
     }];

    [self presentViewController:self.fbSheet animated:YES completion:nil];
}
}
Другие вопросы по тегам