Swift 获取相册中的视频和图片

最近在用Swift写一个采集器的项目,需要从手机的本地相册中选择照片和视频上传,毕竟经验并不是很足,我所遇到的问题就是调起系统相册ImagePickerController中只显示图片没有视频,简单的查了一下就解决了这个问题,简单的写了一个小Demo,下面是Demo 链接和主要的代码:https://github.com/Sufviay/PickerVideoImageDemo

当然在写这种相册、相机等调用系统的东西的时候需要在info中添加相应的获取权限字段:
Privacy - Microphone Usage Description App 访问麦克风
Privacy - Photo Library Usage Description 访问相册
Privacy - Camera Usage Description 访问相机
Privacy - Media Library Usage Description 访问媒体资源库

下面是调起系统相册并包含图片和视频的主要代码:

func photoShow() {
        
        if UIImagePickerController.isSourceTypeAvailable(.photoLibrary) {
            if self.picker == nil {
                self.picker = UIImagePickerController()
                self.picker?.sourceType = UIImagePickerControllerSourceType.photoLibrary
                self.picker?.delegate = self
                //控制相册中显示视频和照片
                self.picker?.mediaTypes = ["public.movie", "public.image"]
                
                self.picker?.allowsEditing = false
                
            }
            self.present(picker!, animated: true, completion: nil)
        } else {
            print("读取图库失败")
        }
        
    }

主要是在UIImagePickerController的mediaTypes属性中添上"public.movie"和public.image",就会可以将视频和图片都显示出来

你可能感兴趣的:(Swift 获取相册中的视频和图片)