swift WatchConnectivity在后台运行 - ApplicationContext不是一直在运行

时间:2017-08-10 11:46:10

标签: ios swift watch-os-3 watchconnectivity

我想知道一种更好的方法(使用iPhone)向Watch发送消息(在后台)。目前我使用:

session.update(applicationContext: package, completion: nil)

用于向Watch发送消息和

 func didReceivedApplicationContext(applicationContext:[String : Any])

在Watch中接收消息。问题是,正如文档中所述“系统将在适当的时间传输内容”,我无法控制那些“oportune时代”。

此时,我在iPhone类中检查Watch的状态。如果Watch在后台,我用updateApplicationcontext发送数据(这不是很好),否则,如果Watch在前台,我用sendMessage发送数据

代码:

 if session.isWatchReachable()
    {
        session.send(message: package, completion: nil)
    }
    else
    {
        session.update(applicationContext: package, completion: nil)
    }

这是在后台传输数据的更好方法吗?

0 个答案:

没有答案