【问题标题】:iOS: Launching Messages app with multiple recipientsiOS:启动具有多个收件人的消息应用程序
【发布时间】:2014-05-23 03:34:45
【问题描述】:

我正在尝试进行设置,以便我的用户可以向一群人发送文本。现在使用电子邮件很简单,URL 方案只是 mailto://firstemail@email.com,secondemail@email.com,然后可以与 openURL 方法一起使用。

当谈到短信时,我自然决定尝试sms://2065555555,2061234567,但这不起作用(它只会添加第一个数字)。稍微浏览一下 Google 后,我发现一些较旧的线程声称使用 URL 方法无法向多个收件人发送短信。

为了向多个人发送消息,我继续在我的应用程序中添加了MessageUI,并连接了MFMessageComposeViewControllerDelegate,现在我可以一次向多个人发送消息。但是,仅在我自己的应用程序中,这不是我想要的。我希望框架中有一些东西可以让我利用多个收件人功能,然后在默认信使中启动它,但我找不到任何允许这样做的东西。

所以,简而言之,有没有任何可能的方式我可以编写我的应用程序以填充具有多个收件人的默认消息应用程序?

编辑

实际上,我确定一定有办法做到这一点,我刚刚检查了 Cobook 应用程序,它们允许用户选择联系人,然后启动消息应用程序发送“新群组彩信”。

【问题讨论】:

    标签: ios objective-c cocoa-touch sms


    【解决方案1】:

    我意识到这是一个非常古老的问题 - 但我最近发现了解决方法,并在此处发布了相关信息:

    SMS WatchKit multiple number delimiter

    虽然此答案是特定于 watchkit 的,但网址确实是您要询问的内容。

    回答: 我found an obscure page 给了我答案。事实证明,Apple 在我能找到的任何地方都没有记录它:

        let urlSafeBody = messageBody.stringByAddingPercentEncodingWithAllowedCharacters(NSCharacterSet.URLHostAllowedCharacterSet())
        if let urlSafeBody = urlSafeBody, url = NSURL(string: "sms:/open?addresses=1-408-555-1212,1-408-555-2121,1-408-555-1221&body=\(urlSafeBody)") {
            WKExtension.sharedExtension().openSystemURL(url)
         }
    

    上述版本将在 Apple Watch 上打开消息应用程序,并预先填充多个收件人。

    许多页面表明这是不可能的,但它是。万岁!

    【讨论】:

    • 虽然这在理论上可以回答问题,it would be preferable 在这里包含答案的基本部分,并提供链接以供参考。
    • 添加了该帖子的详细信息。
    【解决方案2】:

    Apple's documentation for the "sms://" URL scheme 似乎表明该 URL 中只能有一个电话号码。

    这里最简单的做法是继续使用 MFMessageComposeViewController(它的外观和感觉非常接近人们用来发送和接收 SMS 消息的默认 Messages.app)。

    并且 MFMessageComposeViewController 有一个receipients property,它是一个数组,这意味着您可以在撰写视图中拥有多个目标电话号码。

    最后,here is a related question 涵盖了您在此处考虑的许多相同领域。

    【讨论】:

    • 谢谢,正如我在帖子中所说,我已经设置了 MFMCVC 以向多个收件人发送文本。我只想启动消息应用程序,我知道这是可能的,因为 Cobook 就是这样做的。我只是不知道他们是怎么做到的。
    • 有趣的是,Cobook has an "open source" page on their website;但是绝对没有文档或有用的提示来说明其中的实际内容或它是否对您有帮助。也许它履行了一些许可协议,但对 Cobook 而言,它的用处和不诚实。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-06-19
    • 2010-10-12
    • 2015-08-08
    • 2018-05-04
    • 1970-01-01
    • 1970-01-01
    • 2020-01-30
    相关资源
    最近更新 更多