ios - 是否可以在 iOS 中使用 URL 将媒体文件共享到 Instagram?
问题描述
我想知道是否可以使用 Instagram 的 URL 共享媒体文件。基本上,我在自己的应用程序中制作了应用程序捕获图片和视频,并将其分享给其他应用程序。而我用过"instagram://library?LocalIdentifier=" + asset.localIdentifier
的,类型asset
是PHAsset
。但我想在保存到真实设备的相册之前将媒体文件分享到 Instagram。如果我要这样做,我应该使用 URL,而不是PHAsset
. 您是否认为只有一种方法可以使用 URL 共享媒体文件,我应该保存文件并PHAsset
从设备获取?如果不这样做,我该如何设置参数instagram://library
以使用文件 url?请告诉我。
而且在官方文档中,也没有关于library
参数的解释。这是否意味着有一天可以删除该参数?
谢谢!
解决方案
您可以使用UIDocumentInteractionController共享照片而不将其保存到照片库中
let documentInteractionController = UIDocumentInteractionController(url: url)
documentInteractionController.name = fileName
documentInteractionController.presentPreview(animated: true)
分享到 Instagram Feed - 复制粘贴下面的相关内容,以防链接稍后失效。
文档交互
如果您的应用程序创建了照片并且您希望您的用户使用 Instagram 共享这些照片,您可以使用文档交互 API在 Instagram 的共享流程中打开您的照片。
您必须首先将文件保存为 PNG 或 JPEG(首选)格式并使用文件扩展名
.ig
. 使用 iOS 文档交互 API,您可以触发 Instagram 打开照片。我们的文档交互 UTI 的标识符是com.instagram.photo
,它符合public/jpeg
和public/png
UTI。有关详细信息,请参阅 Apple 文档文章:预览和打开文件和UIDocumentInteractionController 类参考。或者,如果您只想在应用程序列表中显示Instagram(而不是 Instagram 以及任何其他符合公共/jpeg 标准的应用程序),您可以指定扩展类
igo
,它的类型为com.instagram.exclusivegram
.触发后,Instagram 将立即向用户展示我们的过滤屏幕。该图像已为 Instagram 预加载和调整大小。为获得最佳效果,Instagram 更喜欢打开 640 像素 x 640 像素正方形的 JPEG。如果图像较大,它将动态调整大小。
推荐阅读
- php - 如何消除重复的结果
- python - 从 redis 队列到 azure 容器实例的超时错误
- java - 提高字符串到二进制数转换的性能
- javascript - 如何记录谷歌应用脚本列中所有单元格的值
- python - 如何使用Hashlib对一个数字进行MD5散列?
- java - 在 Java 中创建受密码保护的 zip 文件,而不在磁盘上创建它
- c# - c#在控制器构造函数中使用接口和类有什么用
- javascript - 在 React 中更新子道具组件后更改父状态?
- python - 如何检查一个句子是否是一个带有spacy的问题?
- python - 使用 makedirs 将文件夹转换为 csv 文件