2014-04-02 69 views
1

我想分享視頻從我的應用程序到youtubeinstagram使用UIActivityViewController。但是我得到的輸出像下面提到的圖像。如何使用iOS中的UIActivityViewController將視頻從我的應用程序共享到YouTube和Instagram應用程序?

enter image description here

但我的期望是,將YouTube和Instagram的應用歸入此UIActivityViewController爲影片。像下面提到的圖像。此圖像取自設備相冊。

enter image description here

我的代碼是:

- (IBAction)ShareVideo:(id)sender 
{ 
    NSString *[email protected]"Video Sharing "; 
    NSString *[email protected]"India"; 
    NSString *textObject = @"Video Sharing Test"; 
    NSData *videoData = [NSData dataWithContentsOfURL:movieURL]; //movieURL contains the video taken from photoAlbum 

    NSArray *objectsToShare = @[mySubject,textLocationA,textObject,videoData,movieURL]; 

    UIActivityViewController *controller = [[UIActivityViewController alloc] initWithActivityItems:objectsToShare applicationActivities:nil]; 

    // Exclude all activities except AirDrop. 
    NSArray *excludedActivities = @[UIActivityTypePostToTwitter, UIActivityTypePostToFacebook, 
            UIActivityTypePostToWeibo, 
            UIActivityTypeMessage, UIActivityTypeMail, 
            UIActivityTypePrint, UIActivityTypeCopyToPasteboard, 
            UIActivityTypeAssignToContact, UIActivityTypeSaveToCameraRoll, 
            UIActivityTypeAddToReadingList, UIActivityTypePostToFlickr, 
            UIActivityTypePostToVimeo, UIActivityTypePostToTencentWeibo]; 
    controller.excludedActivityTypes = excludedActivities; 

    //-- define the activity view completion handler 
    controller.completionHandler = ^(NSString *activityType, BOOL completed){ 
     NSLog(@"Activity Type selected: %@", activityType); 
     if (completed) { 
      NSLog(@"Selected activity was performed."); 
     } else { 
      if (activityType == NULL) { 
       NSLog(@"User dismissed the view controller without making a selection."); 
      } else { 
       NSLog(@"Activity was not performed."); 
      } 
     } 
    }; 

    //-- define activity to be excluded (if any) 
    controller.excludedActivityTypes = [NSArray arrayWithObjects:UIActivityTypeAssignToContact, nil]; 
    [controller setCompletionHandler:^(NSString *activityType, BOOL completed) { 
     if ([activityType isEqualToString:UIActivityTypePostToFacebook]) { 
      if (completed) 
      { 
       NSLog(@"facebook"); 

      } 

     } 
     else if ([activityType isEqualToString:UIActivityTypeSaveToCameraRoll]) { 
      if (completed) 
      { 
       NSLog(@"Video Saved"); 
      } 
     } 

     else if ([activityType isEqualToString:UIActivityTypePostToTwitter]) { 
      if (completed) 
      { 
       NSLog(@"twittter"); 
      } 

     } 
    }]; 

    // Present the controller 
    [self presentViewController:controller animated:YES completion:nil]; 
} 

請給我一些想法來處理這個過程。

+0

@ Kramnik0 - 看到這個http://stackoverflow.com/questions/20628620/youtube-and-uiactivityview-on-ios – Sabs

回答

1
  1. 您必須添加自己的自定義UIActivity YouTube的:How can I create a custom UIActivity in iOS?
  2. 添加共享對話框。您可以使用此庫:https://github.com/romaonthego/REComposeViewController
  3. 使用API​​進行共享。感謝@UserAwesome:http://code.google.com/apis/youtube/2.0/developers_guide_protocol.html#Uploading_Videos

OR

你可以嘗試找到現有的組件它。 :)

+0

感謝您的回覆。等待我會檢查並讓你知道。 – Sabs

+0

@Sabs搜索github和其他人是你的方式 – kaspartus

相關問題