将标签保存在Watchos -Swift



我通过iOS传递了一些标签。

ios:

@IBAction func sendPara(_ sender: Any) {
        session.sendMessage(["a" : contoLabel.text! ], replyHandler: nil, errorHandler: nil)  
    }

手表:

func session(_ session: WCSession, didReceiveMessage message: [String : Any]) {
        //Recieve a Message
        self.wcontoLabel.setText(message["a"]! as? String)
         }

现在,我的问题是..每次关闭WatchOS应用程序,所有传递的数据都丢失了。在CorrisPondent标签上?

/*您需要将值保存在用户默认值中,然后在观察应用程序上获取值启动 */

func session(_ session: WCSession, didReceiveMessage message: [String : Any]) 
{
    //save text in user defauld
    if let value = message["a"] {
        UserDefaults.standard.set(value, forKey: "a")
    }
    UserDefaults.standard.synchronize()
}

您始终可以将数据保存在WatchOS应用程序的UserDefaults中,但是由于Apple Watch的内存有限,因此每次通过电话所需的时间传递数据是可靠的。

最新更新