ios - 如何从图像选择器中获取 NSData?
问题描述
我尝试将照片库中选定视频中的视频分享到 Instagram 故事
func shareToInstagramStories(video: NSData) {
// NOTE: you need a different custom URL scheme for Stories, instagram-stories, add it to your Info.plist!
guard let instagramUrl = URL(string: "instagram-stories://share") else {
return
}
if UIApplication.shared.canOpenURL(instagramUrl) {
let pasterboardItems = [["com.instagram.sharedSticker.backgroundVideo": video as Any]]
UIPasteboard.general.setItems(pasterboardItems)
UIApplication.shared.open(instagramUrl)
} else {
//fail
}
}
这是我的图像选择器功能
func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [UIImagePickerController.InfoKey : Any]) {
self.dismiss(animated: true, completion: nil)
videoURL = info[UIImagePickerController.InfoKey.init(rawValue: "UIImagePickerControllerReferenceURL")] as? NSURL
}
解决方案
当我将“UIImagePickerControllerReferenceURL”更改为“UIImagePickerControllerMediaURL”时,它完全有效
func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [UIImagePickerController.InfoKey : Any]) {
self.dismiss(animated: true, completion: nil)
videoURL = info[UIImagePickerController.InfoKey.init(rawValue: "UIImagePickerControllerMediaURL")] as? URL
}
推荐阅读
- python - 下载 numpy、aitextgen 和其他模块的问题
- javascript - 从控制器中的表单中选择不起作用
- deployment - 合约成功部署,但松露说相反
- javascript - 如何使用jspdf自动表在索引0中追加/添加新列
- tensorflow - Huggingface - TFDistilBertForSequenceClassification 预训练模型中的 Dropout 层
- amazon-cloudformation - 如何使用 aws-cdk 向 ecs 任务定义注入秘密
- laravel - 为什么碳之间返回无效数据?
- python - 继续在 jupyter notebook 中获取 StopIteration
- javascript - 在 ul 标签内单击 puppeteer 不起作用
- python - 在 python 中从 S3 Bucket 创建数据帧时出错