1

Я хочу опубликовать что-то на Facebook. Для этого я использовал SLComposeViewController. Я просто хочу спросить, как я могу поделиться, если пользователь не настроил свое приложение в телефоне. Есть ли способ открыть его в браузере, а затем отправить что-нибудь. Рассмотрите, что я хочу опубликовать любую строку, чтобы сказать «привет там». Поэтому я держу эту строку, открываю сафари и запишу туда. После того, как я вошел в строке размещено автоматическиПоделиться на Facebook, если приложение не настроено

if SLComposeViewController.isAvailableForServiceType(SLServiceTypeFacebook) { 
      let fbShare:SLComposeViewController = SLComposeViewController(forServiceType: SLServiceTypeFacebook) 
      fbShare.completionHandler = { 
       result in 
       switch result { 
       case SLComposeViewControllerResult.Cancelled: 
        //Code to deal with it being cancelled 
        break 

       case SLComposeViewControllerResult.Done: 
        //Code here to deal with it being completed 
        break 
       } 
      } 
     refrenceViewController.presentViewController(fbShare, animated: true, completion: nil) 

    } else { 
     //open safari and post it there 
    } 
+0

Используйте Facebook SDK. –

ответ

0

Я использовал следующий код, чтобы размещать видео на Facebook. Вы можете использовать аналогичный подход для публикации своего текста.

NSData *data = [NSData dataWithContentsOfURL:outputFileURL]; 
NSMutableDictionary *params = [NSMutableDictionary dictionaryWithObjectsAndKeys: 
               data, @"video.mp4", 
               @"video/mp4", @"contentType", 
               caption, @"description", 
               nil]; 
/* make the API call */ 
FBSDKGraphRequest *request = [[FBSDKGraphRequest alloc] 
               initWithGraphPath:@"/me/videos" 
               parameters:params 
               HTTPMethod:@"POST"]; 

[request startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection, 
                 id result, 
                 NSError *error) { 
     if(!error) { 
       DDLogDebug(@"result %@",result); 
     } else { 
       DDLogError(@"error description : %@",error.description); 
       [Helper showToast:[NSString stringWithFormat:@"Unable to share to Facebook : Error: %@",[error localizedDescription]] withDuration:1]; 
     } 
}]; 

, конечно же, перед этим вам необходимо убедиться, что у вас уже есть маркер FBSDKAccess. Вы можете проверить полную документацию из facebook sdk https://developers.facebook.com/docs/ios/graph