MFMessageComposeViewController and iMessage

3
我正在开发一个应用程序,其中包含一个按钮。如果您点击该按钮,将显示一个MFMessageComposeViewController,其中填写了正文和一个收件人。这个收件人是“4343”,是比利时短信的一个短代码。
错误的地方在于MFMessageComposeViewController会将所有设置为iMessage:发送按钮是蓝色的,并且收件人格式化为“(434) 3”,也是蓝色的。
简而言之,这意味着iOS选择了iMessage,但我想覆盖它。有人知道如何覆盖此行为并使其发送真正的文本消息(SMS)吗?
我所看到的是,如果发送文本,则在我的“消息”应用中出现为普通文本。但这仍然令人困惑...

似乎 MFMessageComposeViewController 目前存在问题:只有当所有的接收者都通过 iMessage 注册后才能使用。也就是说,它强制使用 iMessage,而不像信息应用程序那样灵活。这是一个 bug,请报告它。 - Rok Strniša
2个回答

0

仅从MFMessageComposeViewController类参考中看,没有公开的方法可以做到这一点。

如果您在常规消息应用程序中键入4343,它是否也会以蓝色突出显示? (我意识到这个问题已经几个月了...)


-1

我认为问题在于MFMessageComposeViewController只显示一个蓝色的“发送”按钮。因此,作为用户,您无法看到它是发送iMessage、SMS(因为接收者未注册iMessage)还是甚至MMS(当向邮件地址发送文本或发送像联系人从Contacts.app或照片等不仅仅是文本的内容时)。


这并不是实际情况。请看我对问题的评论。 - Rok Strniša
不,我的测试表明,如果接收者未注册iMessage,则MFMessageComposeViewController实际上会发送短信。如果是这种情况,它只是不会像真正的Message.app中那样显示一个绿色按钮。 - johk95
我刚试了一下。如果有一个或多个收件人没有在iMessage上注册,它将向所有收件人发送标准消息(SMS)。因此,它的工作方式就像Messages.app一样,如果群组中有一个人未注册,则不会发送任何iMessage。 - johk95
嗯,不确定为什么它对我不起作用。 - Rok Strniša

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接