【发布时间】:2018-12-19 19:02:57
【问题描述】:
在我的应用中,用户使用内置的UIImagePickerController 从他们的库中选择一个视频。我可以检索 URL 并播放所选视频。这很好用。
但是,我还希望能够在用户退出并重新启动应用程序后稍后播放相同的视频,而无需用户使用选择器重新选择它。我想不出办法来做到这一点。我尝试同时使用UIImagePickerControllerReferenceURL 和UIImagePickerControllerMediaURL。当我立即播放视频时,它们都可以工作。我尝试将这些 URL 保存在 userDefaults 中,并在下次运行应用程序时检索它们。我正确检索了 URL,但视频无法使用 AVPlayer 播放。我预计 UIImagePickerControllerMediaURL 会出现这种行为,因为这似乎是一个临时 URL,但我没想到 UIImagePickerControllerReferenceURL 会出现这种情况。
我也尝试过使用PHAsset.fetchAssets(withALAssetURLs: <#T##[URL]#>, options: <#T##PHFetchOptions?#>),但这不会返回任何值。
如何保存对视频或视频本身的引用以供日后使用?
【问题讨论】:
-
您可以将视频复制到文档目录或缓存文件夹,并将“相对url”保存为用户默认值。
-
你能发布一些代码来说明如何做到这一点吗?
-
使用此答案保存视频stackoverflow.com/a/33916860/1244597
标签: ios swift video uiimagepickercontroller userdefaults