【问题标题】:Instagram Sharing to Feed iOS not working (UIDocumentInteractionController)Instagram 共享以供 iOS 不工作(UIDocumentInteractionController)
【发布时间】:2020-11-25 11:33:43
【问题描述】:

iOS 14.2,我无法按照https://developers.facebook.com/docs/instagram/sharing-to-feed/ 中的说明分享图片

我可以通过这个菜单正确地将相同的图像分享给任何其他应用程序(例如电报)

代码:

func shareToInstagramFeed() {
    let instagramURL = NSURL(string: "instagram://")

    if UIApplication.shared.canOpenURL(instagramURL! as URL) {
        let jpgPath = (NSTemporaryDirectory() as NSString).appendingPathComponent("instagram.ig")
        do {
            try selectedImage.image?.jpegData(compressionQuality: 1)?.write(to: URL(fileURLWithPath: jpgPath), options: .atomic)
        } catch {
            print(error)
        }
        let rect = CGRect.zero
        
        documentInteractionController = UIDocumentInteractionController(url: URL(fileURLWithPath: jpgPath))
        documentInteractionController.delegate = self
        documentInteractionController.uti = "com.instagram.photo"
        documentInteractionController.presentOpenInMenu(from: rect, in: view, animated: true)
    }
}

分享菜单:

Instagram 错误:

【问题讨论】:

  • 我也遇到了同样的问题,你找到解决办法了吗?
  • 这里有同样的问题。非常令人沮丧。除 Instagram 外,其他所有选项都适用

标签: ios swift facebook instagram


【解决方案1】:

我为此苦苦挣扎,最终使用了 UIActivityViewController 并且它起作用了。

 let items = [image]
    let ac = UIActivityViewController(activityItems: items, applicationActivities: nil)
    present(ac, animated: true)

【讨论】:

    【解决方案2】:

    在 Instagram 版本 171.0 中,此问题已得到修复。它可以工作,但很丑,你不能选择故事或提要,也不能编辑照片。

    我相信instagram的功能会让这个功能变得更好。

    如果您只需要共享一张图片,您可以使用此解决方法:

    let ac = UIActivityViewController(activityItems: [imageUrl, imageUrl], applicationActivities: nil)
    present(ac, animated: true)
    

    (imageUrl 故意输入 2 次) 然后你会得到以下屏幕:

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-09-21
      • 1970-01-01
      • 1970-01-01
      • 2013-01-22
      • 1970-01-01
      • 2012-12-21
      相关资源
      最近更新 更多