如何在我的iOS应用程序中处理共享图像?

时间:2017-08-02 08:56:09

标签: ios objective-c swift xcode

我正在建立一个像Instagram一样的社交网络应用程序。在这个应用程序中,您可以拍照并在应用程序内共享。

我想将我的应用添加到"与...共享"画廊内的菜单。

目前我添加了应用扩展程序,我的应用程序出现在该菜单上。

但是,我想要做的是,将所选图像发送到主应用程序并在那里处理它。 (如果用户已登录,请转到发布创建屏幕,如果没有先登录,则转到创建屏幕。)

如何实现这一目标?我尝试使用网址方案启动应用,但无法通过所选图片。

到目前为止,这是代码:

import UIKit
import Social
import MobileCoreServices

class ShareViewController: SLComposeServiceViewController {

    let MAX_SHARE_TEXT_LENGTH = 25

    override func isContentValid() -> Bool {
        // Do validation of contentText and/or NSExtensionContext attachments here

        //Validate text.
        if let currentMessage = contentText {
            let currentMessageLength = currentMessage.characters.count
            charactersRemaining = MAX_SHARE_TEXT_LENGTH - currentMessageLength

            if Int(charactersRemaining) < 0 {
                return false
            }
        }

        return true
    }

    override func didSelectPost() {
        // This is called after the user selects Post. Do the upload of contentText and/or NSExtensionContext attachments.

        // Inform the host that we're done, so it un-blocks its UI. Note: Alternatively you could call super's -didSelectPost, which will similarly complete the extension context.

        self.extensionContext!.completeRequestReturningItems([], completionHandler: nil)
    }

    override func configurationItems() -> [AnyObject]! {
        // To add configuration options via table cells at the bottom of the sheet, return an array of SLComposeSheetConfigurationItem here.
        print(extensionContext)
        return []
    }
}

0 个答案:

没有答案