【问题标题】:iOS image picker returning non-existent file path for videoiOS图像选择器返回不存在的视频文件路径
【发布时间】:2016-06-14 18:36:47
【问题描述】:

考虑下面的方法,用它的行为注释。

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

    // Apparently valid URL, looks like
    // "file:///private/var/mobile/Containers/Data/Application/.../filename.mov"
    NSURL *videoURL = info[UIImagePickerControllerMediaURL]; 

    // Always evaluates to false; no videos are saved
    if (UIVideoAtPathIsCompatibleWithSavedPhotosAlbum(videoURL.absoluteString) {        
        UISaveVideoAtPathToSavedPhotosAlbum(videoURL.absoluteString, self, @selector(video:didFinishSavingWithError:contextInfo:), nil);
    }      
}

为什么这不起作用,我该如何解决?

【问题讨论】:

    标签: ios objective-c url uiimagepickercontroller


    【解决方案1】:

    正如他们的名字所暗示的,UIVideoAtPathIsCompatibleWithSavedPhotosAlbum()UISaveVideoAtPathToSavedPhotosAlbum() 方法需要一个路径,而不是 URL。 Not the same thing.

    字符串

    file:///private/var/mobile/Containers/Data/Application/.../filename.mov

    是一个URL,由scheme

    组成

    file://

    路径

    /private/var/mobile/Containers/Data/Application/.../filename.mov

    设计为接受路径的函数在传递完整 URL 时将无法正常工作。

    要解决此问题,请将对 videoURL.absoluteString 的调用替换为 videoURL.path

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-04-01
      • 1970-01-01
      • 2021-12-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多