使用Swift中的UIDocumentInteractionController将多张照片发布到Instagram应用程序

时间:2017-09-18 17:48:58

标签: ios swift instagram

我是经验丰富的开发人员,但在Swift上是新手。 我的目的是以编程方式在我的iOS应用程序中绘制一些图像并将它们发布到Instagram应用程序。

经过一些研究后我发现有两种方法可以做到这一点。

第一个是UIActivityViewController。这种方式适用于一个图像,但当我传递两个或更多图像时,Instagram应用程序不会显示在弹出视图中。

第二种方法是使用UIDocumentInteractionController。通过这种方式,我可以将图像路径作为URL传递。但是通过这个URL,我只能将一个图像路径传递给该类。我的代码如下。

    let instagramURL = NSURL(string: "instagram://app")


    if(UIApplication.shared.canOpenURL(instagramURL! as URL)) {
        let imagePost = imageToPost

        let fullPath = NSURL(fileURLWithPath: documentsDirectory()).appendingPathComponent("insta.igo")
        let a = try! UIImagePNGRepresentation(imagePost)?.write(to: fullPath!, options: .atomic)

        let rect = CGRect(x: 0, y: 0, width: 0, height: 0)
        self.docController.uti = "com.instagram.exclusivegram"
        let igImageHookFile = fullPath
        self.docController = UIDocumentInteractionController(url: igImageHookFile! as URL)
        self.docController.annotation = ["InstagramCaption":"Text"]
        self.docController.presentOpenInMenu(from: rect, in: self.view, animated: true)

    } else {
        print("no instagram found")
    }

有没有办法在不使用相机胶卷的情况下发布多张图片?

0 个答案:

没有答案