2016-09-09 4 views
1

Я создаю приложение iMessage для iOS 10, в котором я бы хотел отправить некоторые данные с помощью макета. Когда пользователь отбирает макет, который был отправлен, он откроет приложение iMessage и получит доступ к данным, которые также были отправлены. Данные представляют собой String.Отправить и открыть данные в приложении iMessage

Должен ли я использовать URL-адрес MSMessage для отправки данных? Как только пользователь нажимает на макет MSMessage в iMessage, как мне получить URL снова?

Спасибо

ответ

2

Да, вы бы использовать MSMessage.URL для отправки и получения данных.

Когда пользователь ударит по MSMessage, вызывается -(void)didBecomeActiveWithConversation:(MSConversation *)conversation . Вы можете получить доступ к выбранному сообщение URL через переданный объект MSConversation как так NSURL *url = conversation.selectedMessage.URL

2

в скор 3 вы можете получить URL из этого перестарались метода Messageviewcontroller, savedConversation является объектом MSConversation

override func willBecomeActive(with conversation: MSConversation){ 
     if(savedConversation?.selectedMessage?.url != nil) 

      let url = savedConversation?.selectedMessage?.url 
      UIApplication.shared.open(url, options: [:], completionHandler: nil) 

    } 
0

MSMessage «ы url свойство, где вы можете сохранить свои пользовательские данные.

Вы также можете использовать библиотеку iMessageDataKit. Это делает установку и получение данных очень легко, как:

let message: MSMessage = MSMessage() 

message.md.set(value: 7, forKey: "user_id") 
message.md.set(value: "john", forKey: "username") 
message.md.set(values: ["joy", "smile"], forKey: "tags") 

print(message.md.integer(forKey: "user_id")!) 
print(message.md.string(forKey: "username")!) 
print(message.md.values(forKey: "tags")!) 

(Отказ от ответственности: Я автор iMessageDataKit)

Смежные вопросы