小编Hee*_*ena的帖子

当用户尝试在 IOS 14、swift 5 中使用具有选定照片权限的 PHPickerViewController 检索视频时,获取视频数据为零

在 iOS 14 中,Apple 引入了PHPickerViewController 用户有权访问所有照片库视频或选定视频的权限。在第一种情况下,当我们向所有视频提供权限时,我们能够从照片库中获取视频并将其转换为视频数据以将其发送到后端服务器。

但在第二种情况下,当用户向选定的视频提供权限时,在这种情况下,我们可以从照片库中获取视频,但无法将其转换为本地视频 url 中的数据。此时数据始终为零。

我们使用下面的代码从照片库 url 检索视频并将其转换为数据。

// MARK: PHPickerViewControllerDelegate Methods
extension PhotoPickerVC: PHPickerViewControllerDelegate {
    
    func picker(_ picker: PHPickerViewController, didFinishPicking results: [PHPickerResult]) {
        // Always dismiss the picker first
        dismiss(animated: true)
        if !results.isEmpty {
            guard let itemProvider = results.first?.itemProvider else { return }
            
            itemProvider.loadItem(forTypeIdentifier: "public.movie", options: nil) { [weak self] (fileURL, _) in
                DispatchQueue.main.async {
                    guard let videoURL = fileURL as? URL, let _ = self else { return }
                    do {
                        //mediaURL video …
Run Code Online (Sandbox Code Playgroud)

ios swift ios14 phpickerviewcontroller

7
推荐指数
1
解决办法
1816
查看次数

标签 统计

ios ×1

ios14 ×1

phpickerviewcontroller ×1

swift ×1