在 iMessage 应用程序的对话中存储变量
Store a variable in a conversation in iMessage Apps
我对开发 iMessage 应用程序完全陌生。
我想将一个共享变量(比如说一个 Int)存储到对话中。用例可以是一个递增的整数,每次从对话中的任何参与者发送消息时都会递增。
这可行吗?
我已经搜索过了,但没有找到。
您可以在 URL 中附加共享变量。
//用户发送消息时插入URL .
let message = MSMessage()
message.layout = layout
message.url = URL(string: "application/sharedVariable=X")
self.activeConversation?.insert(message, completionHandler: { (error) in
print("error")
})
您可以从URL上面提取上面的共享变量。
let url = "http://application/sharedVariable=X"
let queryItems = URLComponents(string: url)?.queryItems
let sharedValue = queryItems?.filter({[=11=].name == "sharedVariable"}).first
print(sharedValue?.value)
如果您不想让任何人知道共享变量,那么您可以在发送时加密。
您可以使用 iMessageDataKit 库。它是 setting/getting Int
、Bool
、Float
、Double
、String
和 [=17] 的一个小而有用的 MSMessage
扩展=] 键的值。
它使设置和获取数据变得非常容易,例如:
let message: MSMessage = MSMessage()
message.md.set(value: 1, forKey: "messageCount")
print(message.md.integer(forKey: "messageCount")!)
(免责声明:我是 iMessageDataKit
的作者)
我对开发 iMessage 应用程序完全陌生。
我想将一个共享变量(比如说一个 Int)存储到对话中。用例可以是一个递增的整数,每次从对话中的任何参与者发送消息时都会递增。
这可行吗?
我已经搜索过了,但没有找到。
您可以在 URL 中附加共享变量。
//用户发送消息时插入URL .
let message = MSMessage() message.layout = layout message.url = URL(string: "application/sharedVariable=X") self.activeConversation?.insert(message, completionHandler: { (error) in print("error") })
您可以从URL上面提取上面的共享变量。
let url = "http://application/sharedVariable=X" let queryItems = URLComponents(string: url)?.queryItems let sharedValue = queryItems?.filter({[=11=].name == "sharedVariable"}).first print(sharedValue?.value)
如果您不想让任何人知道共享变量,那么您可以在发送时加密。
您可以使用 iMessageDataKit 库。它是 setting/getting Int
、Bool
、Float
、Double
、String
和 [=17] 的一个小而有用的 MSMessage
扩展=] 键的值。
它使设置和获取数据变得非常容易,例如:
let message: MSMessage = MSMessage()
message.md.set(value: 1, forKey: "messageCount")
print(message.md.integer(forKey: "messageCount")!)
(免责声明:我是 iMessageDataKit
的作者)