在iMessage扩展中检测用户交互

时间:2019-03-26 15:52:29

标签: swift user-interaction imessage-extension msmessage

我知道,使用iMessage扩展名,除非应用程序根据Apple的防止自动消息的策略检测到用户交互,否则无法发送消息。

但是,我有一个屏幕截图检测器,当用户对其进行屏幕截图时会自动发送一条消息。

扩展程序已经打开并且选择了一条消息并对其进行了屏幕截图时,一切正常,因为打开应用程序之前存在交互。

但是,如果在扩展名未打开的情况下直接点击消息并对其进行截图,则iMessage将不会发送消息。

我想知道两件事之一:

  1. 无论如何如何绕过和发送消息(不太可能起作用)
  2. 在显示消息之前如何检查是否存在互动

如果您有任何想法请告诉我。

activeConversation?.send(message) { error in
   print(error)
}

这是我很确定的错误。但是,我确实进行了检查,但主动对话并没有失败

Optional(Error Domain=com.apple.messages.messagesapp-error Code=9 "(null)")

1 个答案:

答案 0 :(得分:0)

您是否正在调试器中进行测试,并且确认是否在没有调试的情况下仍然失败?

正如我在this question中回答的那样,有一个XCode错误,当您使用info.plist键授予您摄像头许可时,该错误会导致崩溃。

这是一个怪异的副作用,我花了将近两天的时间来解决正在发生的事情(我在测试发送消息的几周前就添加了info.plist键)。