使用类似于SLComposeViewController的Swift将UIImage发布到Instagram

挑战者

我有一个正在处理的iOS Xcode 7 Swift 2项目。该应用程序将照片发布到FacebookTwitter使用:

var shareToFacebook: SLComposeViewController = SLComposeViewController(forServiceType: SLServiceTypeFacebook)

var shareToTwitter: SLComposeViewController = SLComposeViewController(forServiceType: SLServiceTypeTwitter)

喜欢将照片发布到这两个社交媒体上是多么容易和简单。我不需要或不需要它们的API。

我想为做些类似和简单的事情Instagram无需处理的最佳方法是什么Instagram API还是我别无选择?

我的照片data是使用NSCoding而不是保存DocumentDirectory在这里查看了集成,但这是保存在应用程序中的照片directory

就像我在Facebook和Twitter上已经拥有的一样简单。

挑战者

在这里查看并找到了解决方案:

我创建了一个NSObject

import UIKit
import Foundation

class InstagramManager: NSObject, UIDocumentInteractionControllerDelegate {

    private let kInstagramURL = "instagram://app"
    private let kUTI = "com.instagram.exclusivegram"
    private let kfileNameExtension = "instagram.igo"
    private let kAlertViewTitle = "Error"
    private let kAlertViewMessage = "Please install the Instagram application"

    var documentInteractionController = UIDocumentInteractionController()

    // singleton manager
    class var sharedManager: InstagramManager {
        struct Singleton {
            static let instance = InstagramManager()
        }
        return Singleton.instance
    }

    func postImageToInstagramWithCaption(imageInstagram: UIImage, instagramCaption: String, view: UIView) {
        // called to post image with caption to the instagram application

        let instagramURL = NSURL(string: kInstagramURL)
        if UIApplication.sharedApplication().canOpenURL(instagramURL!) {
            let jpgPath = (NSTemporaryDirectory() as NSString).stringByAppendingPathComponent(kfileNameExtension)
            UIImageJPEGRepresentation(imageInstagram, 1.0)!.writeToFile(jpgPath, atomically: true)
            let rect = CGRectMake(0,0,612,612)
            let fileURL = NSURL.fileURLWithPath(jpgPath)
            documentInteractionController.URL = fileURL
            documentInteractionController.delegate = self
            documentInteractionController.UTI = kUTI

            // adding caption for the image
            documentInteractionController.annotation = ["InstagramCaption": instagramCaption]
            documentInteractionController.presentOpenInMenuFromRect(rect, inView: view, animated: true)
        } else {

            // alert displayed when the instagram application is not available in the device
            UIAlertView(title: kAlertViewTitle, message: kAlertViewMessage, delegate:nil, cancelButtonTitle:"Ok").show()
        }
    }

}

然后在我@IBAction我用:

let image = self.photoImageView.image
InstagramManager.sharedManager.postImageToInstagramWithCaption(image!, instagramCaption: "\(self.description)", view: self.view)

这会打开一个带有“ open-in”样式的菜单,用户可以在其中打开该应用程序Instagram(如果已安装)。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何使用SLComposeViewController将多个图像及其消息发布到Facebook?

来自分类Dev

任意位置的Tab栏,类似于Swift中的Instagram主页

来自分类Dev

如何增加UIImage像素以发布到Instagram

来自分类Dev

通过网站将图像发布到instagram

来自分类Dev

iOS将照片发布到Instagram而不打开Instagram应用

来自分类Dev

如何将URL Shema与UIImage共享到Instagram应用?

来自分类Dev

类似于Instagram的滤镜颜色转换矩阵

来自分类Dev

自动发布到instagram

来自分类Dev

从“设置”访问帐户时,无需使用SLComposeviewcontroller即可将图像发布到Facebook

来自分类Dev

使用XSL将XML文件显示为类似于HTML

来自分类Dev

如何使用 html 和 twitter-bootstrap 进行类似于 Instagram 的注册和登录页面

来自分类Dev

在Postgres中的发布流程类似于SSDT

来自分类Dev

从前端将Wordpress发布状态设置为“草稿”,类似于get_delete_post_link

来自分类Dev

InstagramApiSharp可以将数据发布到instagram吗?

来自分类Dev

通过Instasharp API将图像发布到Instagram

来自分类Dev

如何使用PHP MYSQL根据类似于时间线的发布日期显示数据

来自分类Dev

将字典从Swift发布到PHP

来自分类Dev

如何发布到Instagram API?

来自分类Dev

如何发布到Instagram API?

来自分类Dev

将DataTable批量复制到MySQL中(类似于System.Data.SqlClient.SqlBulkCopy)

来自分类Dev

为什么heroku通过301将“类似于文件夹”的请求重定向到http?

来自分类Dev

JBoss:将值绑定到JBoss EAP 6中的JNDI中,类似于JNDIBindingServiceMgr

来自分类Dev

是否有任何类似于Instagram的开源软件

来自分类Dev

限制类似于 Instagram 用户名字段的输入

来自分类Dev

类似于Swift中的python的map函数

来自分类Dev

Swift中的滑动导航类似于Facebook

来自分类Dev

类似于Swift中的python的map函数

来自分类Dev

Swift:将 UIImage 保存并检索到 CoreData 中

来自分类Dev

如何使用Swift将数据从IOS应用发布到MySQL表?

Related 相关文章

  1. 1

    如何使用SLComposeViewController将多个图像及其消息发布到Facebook?

  2. 2

    任意位置的Tab栏,类似于Swift中的Instagram主页

  3. 3

    如何增加UIImage像素以发布到Instagram

  4. 4

    通过网站将图像发布到instagram

  5. 5

    iOS将照片发布到Instagram而不打开Instagram应用

  6. 6

    如何将URL Shema与UIImage共享到Instagram应用?

  7. 7

    类似于Instagram的滤镜颜色转换矩阵

  8. 8

    自动发布到instagram

  9. 9

    从“设置”访问帐户时,无需使用SLComposeviewcontroller即可将图像发布到Facebook

  10. 10

    使用XSL将XML文件显示为类似于HTML

  11. 11

    如何使用 html 和 twitter-bootstrap 进行类似于 Instagram 的注册和登录页面

  12. 12

    在Postgres中的发布流程类似于SSDT

  13. 13

    从前端将Wordpress发布状态设置为“草稿”,类似于get_delete_post_link

  14. 14

    InstagramApiSharp可以将数据发布到instagram吗?

  15. 15

    通过Instasharp API将图像发布到Instagram

  16. 16

    如何使用PHP MYSQL根据类似于时间线的发布日期显示数据

  17. 17

    将字典从Swift发布到PHP

  18. 18

    如何发布到Instagram API?

  19. 19

    如何发布到Instagram API?

  20. 20

    将DataTable批量复制到MySQL中(类似于System.Data.SqlClient.SqlBulkCopy)

  21. 21

    为什么heroku通过301将“类似于文件夹”的请求重定向到http?

  22. 22

    JBoss:将值绑定到JBoss EAP 6中的JNDI中,类似于JNDIBindingServiceMgr

  23. 23

    是否有任何类似于Instagram的开源软件

  24. 24

    限制类似于 Instagram 用户名字段的输入

  25. 25

    类似于Swift中的python的map函数

  26. 26

    Swift中的滑动导航类似于Facebook

  27. 27

    类似于Swift中的python的map函数

  28. 28

    Swift:将 UIImage 保存并检索到 CoreData 中

  29. 29

    如何使用Swift将数据从IOS应用发布到MySQL表?

热门标签

归档