gpt4 book ai didi

ios - 通过 UIactivityViewController 发布发布视频 URL

转载 作者:行者123 更新时间:2023-11-29 10:50:19 25 4
gpt4 key购买 nike

我正在尝试通过 UIActivityViewController 将视频发布到 Facebook、vimeo 等。我正在使用 iOS7。我听说它在 iOS7 中是可能的,但由于某种原因我无法让它工作。

我的代码是:

NSString *shareString = @"My Personal Flick";
NSURL *url = _URL;
AVURLAsset *anAsset = [[AVURLAsset alloc] initWithURL:url options:nil];

NSArray *activityItems = [NSArray arrayWithObjects:shareString, anAsset, nil];

UIActivityViewController *activityViewController = [[UIActivityViewController alloc] initWithActivityItems:activityItems applicationActivities:nil];
activityViewController.modalTransitionStyle = UIModalTransitionStyleCoverVertical;

[self presentViewController:activityViewController animated:YES completion:nil];

有人可以向我解释我哪里出错了吗?

只是为了了解我有一个打开 UIImagePickerViewController 的按钮,我可以在其中选择一个视频,然后将视频保存为 _URL - 那是我从中获取 _URL。

------CODE FOR CREATING _URL OF VIDEO FILE-----------
- (IBAction)chooseImage:(id)sender {
NSLog(@"Chose Image.");
self.imagePicker = [[UIImagePickerController alloc] init];
self.imagePicker.delegate = self;
[self.imagePicker setSourceType:UIImagePickerControllerSourceTypePhotoLibrary];
_imagePicker.mediaTypes = [[NSArray alloc] initWithObjects:(NSString *)kUTTypeMovie, nil];

[self presentViewController:self.imagePicker animated:YES completion:nil];

}
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info
{


NSString *mediaType = [info objectForKey: UIImagePickerControllerMediaType];

if (CFStringCompare ((__bridge CFStringRef) mediaType, kUTTypeMovie, 0)
== kCFCompareEqualTo)
{

NSString *moviePath = [[info objectForKey:UIImagePickerControllerMediaURL] path];

NSURL *_URL=(NSURL*)[info objectForKey:UIImagePickerControllerMediaURL];

NSLog(@"%@",moviePath);

if (UIVideoAtPathIsCompatibleWithSavedPhotosAlbum (moviePath)) {
UISaveVideoAtPathToSavedPhotosAlbum (moviePath, nil, nil, nil);

最佳答案

您不需要 Assets 。这部电影就像任何其他文件类型的附件一样,为此您只需要 url。执行以下操作:

在你的 .h 文件中:

@property (nonatomic, retain) NSURL *fileURL;

在您的 .m 文件中:而不是

NSURL *_URL=(NSURL*)[info objectForKey:UIImagePickerControllerMediaURL];

使用

self.fileURL = (NSURL*)[info objectForKey:UIImagePickerControllerMediaURL];

而不是

NSURL *url = _URL;
AVURLAsset *anAsset = [[AVURLAsset alloc] initWithURL:url options:nil];
NSArray *activityItems = [NSArray arrayWithObjects:shareString, anAsset, nil];

只需使用:

NSArray *activityItems = [NSArray arrayWithObjects:shareString, self.fileURL, nil];

关于ios - 通过 UIactivityViewController 发布发布视频 URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20731186/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com