【发布时间】:2018-04-18 10:07:09
【问题描述】:
我正在为 iMessage 编写应用程序,并希望在用户点击 imessage 应用程序屏幕时自动发送消息。
消息由位置地址的地图组成。
最初,我曾尝试使用 message.url 来包含 maps.apple.com 网址,这样当接收者点击收到的消息时,它会打开地图。
但这似乎不起作用。所以我尝试单独发送地址:首先是图像,然后是地址。然后接收者可以点击地址并打开地图。
我有以下代码:
if let image = createImageForMessage(), let conversation = activeConversation {
let layout = MSMessageTemplateLayout()
layout.image = image
let message = MSMessage()
message.layout = layout
//conversation.insert(message, completionHandler: nil)
//conversation.insertText("We are at:\n" + addressLabel, completionHandler: nil)
conversation.send(message, completionHandler: nil)
conversation.sendText("We are at:\n" + addressLabel, completionHandler: nil)
}
理想情况下,我希望它只需要初始点击,但使用“send”和“sendText”只发送第一个“send”指令,“sendText”被忽略。
如果我使用了注释掉的“insert”和“insertText”,那么两条指令都会被执行,但我必须点击“send”来发送它。
我试过了:
conversation.insert(message, completionHandler: nil)
conversation.sendText("We are at:\n" + addressLabel, completionHandler: nil)
但这没有用。只发送了文本。图像根本不显示。
有人知道如何一键发送两条消息吗?
或者,有人知道我是否可以将两条消息合二为一吗?
【问题讨论】:
-
这是您正在制作的 iMessage 应用程序吗?另外,您有没有机会提供一个更完整的示例,我们可以用来处理并尝试解决这个问题?
-
嗨,史蒂夫,是的,这是我正在制作的 iMessage 应用程序。代码太长,无法在此处发布,但如果您愿意,我可以通过电子邮件发送给您?
标签: ios swift send imessage-extension msmessage