Mon Iphone envoie un tableau sous la forme d'un message de connectivité de surveillance. Comment imprimer le tableau reçu sur la montre? Je reçois «nul» lorsque j'essaie d'imprimer le tableau. Lorsque j'imprime le tableau de messages de surveillance que j'envoie au téléphone, il renvoie: ["message1": ["nom d'utilisateur": "Utilisateur invité", "titleItem": "Hillary ad Mirrors"]] ,comment imprimer un tableau renvoyé par le message instantané de la connectivité de la montre
mon code sur le téléphone pour envoyer le message est:
func sendMessage() {
var messageDataArray1 = ["username":"Guest User", "titleItem":titleItem!]
// Send message
if (WCSession.defaultSession().reachable) {
print("sending watch message array:")
var message1 = ["message1":messageDataArray1]
print(message1)
WCSession.defaultSession().sendMessage(message1,
replyHandler: { (reply) -> Void in
dispatch_async(dispatch_get_main_queue(), {
print("received return watch msg")
})
},
errorHandler: { (error) -> Void in
dispatch_async(dispatch_get_main_queue(), {
//self.receivedMessageLabel.setText("error")
})
}
)
}
}
mon code sur le contrôleur de réception de la montre est:
// MARK: - WCSessionDelegate
func session(session: WCSession, didReceiveMessage message: [String : AnyObject], replyHandler: ([String : AnyObject]) -> Void) {
print("received Imessage from ph")
if let msg = message["message1"] as? String {
print(msg)
}
}
merci Sam_M, qui fonctionne un charme. Puis-je demander comment puis-je obtenir les valeurs dans le tableau «nom d'utilisateur» ou «titleItem»? J'ai essayé var unwrapTitle = message ["titleItem"] comme? [String: [String: String]] print ("title is") impression (unwrapTitle) mais elle renvoie "0" –
@DimitriT De rien :) J'ai mis à jour la réponse pour montrer comment vous pouvez obtenir le nom d'utilisateur et le titleItem . J'ai renommé 'msg' en' userData' pour le rendre plus clair. –
merci beaucoup - bonne aide! –