我们可以在不开发imessage扩展的情况下共享msmessage吗?

时间:2016-10-09 12:05:17

标签: ios10 imessage

我看到MFMessageComposeViewController中有message属性。我们可以构造一个MSMessage并将其分配给MFMessageComposeViewController,然后在新的iMessage App中共享此消息而不开发扩展吗?如果我们可以这样做,我们可以与带有图像和标题的消息共享其他内容,而不是仅仅在iOS 10之前使用纯字符串或附件。

1 个答案:

答案 0 :(得分:1)

根据我在这里学到的https://forums.developer.apple.com/thread/49922,您需要创建一个imessage扩展目标(您不需要为目标进行任何开发),然后您可以在MFMessageComposeViewController中共享msmessage

这是上面链接中的演示:

  1. 创建全新的单一视图应用程序
  2. 在main.storyboard中,在屏幕中间创建一个按钮
  3. 按住Ctrl键拖动"触摸内部"对于我的ViewController类的按钮,在代码中创建onTouchUp(见下文)
  4. 写下面的代码

    import UIKit  
    import Messages  
    import MessageUI  
    
    class ViewController: UIViewController  {  
    
    override func viewDidLoad() {  
        super.viewDidLoad()    
    }
    
    override func didReceiveMemoryWarning() {  
        super.didReceiveMemoryWarning()  
    }  
    
    @IBAction func onTouchUp(_ sender: AnyObject) {  
            let composeVC = MFMessageComposeViewController()  
            let msgLayout = MSMessageTemplateLayout()  
            msgLayout.caption = "something here"  
            let message = MSMessage()  
            message.layout = msgLayout  
            composeVC.message = message  
    
            self.present(composeVC, animated: true, completion: nil)  
        }  
    }  
    
    1. 创建MessagesExtension的目标
    2. 在iPhone 6s Plus上运行应用
    3. 请参阅MFMessageComposeViewController中的MSMessage