我一直在尝试为我们的应用程序创建一个分享体验,Instagram推出了这两个选项:
Facebook有一个很好的lean documentation。我尝试了所有可能的排列使用UIDocumentInteractionController。我尝试使用uti
com.instagram.photo
和com.instagram.video
与ig
扩展,但我一直得到标准的共享弹出窗口,而不是直接启动Instagram。也尝试了com.instagram.exclusivegram
与igo
,但似乎应该触发标准弹出无论如何。
最新代码:
func shareVideo(_ filePath: String) {
let url = URL(fileURLWithPath: filePath)
if(hasInstagram()){
let newURL = url.deletingPathExtension().appendingPathExtension("ig")
do {
try FileManager.default.moveItem(at: url, to: newURL)
} catch { print(error) }
let dic = UIDocumentInteractionController(url: newURL)
dic.uti = "com.instagram.photo"
dic.presentOpenInMenu(from: self.view.frame, in: self.view, animated: true)
}
}
3条答案
按热度按时间yebdmbv41#
试试这个。我目前正在分享我最后保存的视频通过这个:
vyswwuz22#
进入上图所示屏幕的唯一方法是先将视频保存在库中,然后使用未记录的钩子
instagram://library
传递资产localIdentifier
,不要忘记在info.plist
中添加instagram
查询方案。ljsrvy3e3#