Совместное использование Instagram с обходом меню Instagram (Swift) - PullRequest
2 голосов
/ 22 января 2020

Я занимаюсь разработкой приложения, в котором я могу поделиться с Instagram, но я хочу поделиться напрямую с историей Instagram.

В тот момент, когда я пытаюсь поделитесь картинкой, она открывает меню истории Instagram, а затем мне нужно снова щелкнуть, чтобы поделиться.

Есть ли способ обойти этот раздел.

Код:

private let instagramStoriesURL = URL(string: "instagram-stories://share")

   public func postToInstagramStories(image: UIImage, backgroundTopColorHex: String, backgroundBottomColorHex: String, deepLink: String) {

        DispatchQueue.main.async {

                guard let urlScheme = self.instagramStoriesURL else {
                    self.delegate?.error(message: "URL not valid")
                    return
                }

                let pasteboardItems = ["com.instagram.sharedSticker.stickerImage": image,
                                       "com.instagram.sharedSticker.backgroundTopColor" : backgroundTopColorHex,
                                       "com.instagram.sharedSticker.backgroundBottomColor" : backgroundBottomColorHex,
                                       "com.instagram.sharedSticker.contentURL": deepLink] as [String : Any]

                if #available(iOS 10.0, *) {
                    let pasteboardOptions = [UIPasteboard.OptionsKey.expirationDate : NSDate().addingTimeInterval(60 * 5)]
                    UIPasteboard.general.setItems([pasteboardItems], options: pasteboardOptions)

                } else {
                    UIPasteboard.general.items = [pasteboardItems]
                }
                if #available(iOS 10.0, *) {
                    UIApplication.shared.open(urlScheme, options: [:], completionHandler: { (success) in
                        self.delegate?.success()
                    })
                } else {
                    UIApplication.shared.openURL(urlScheme)
                    self.delegate?.success()
                }
        }
    }
...