代码之家  ›  专栏  ›  技术社区  ›  daspianist

iPhone应用程序无法访问watchOS应用程序(无法获取WCSession.isReachable==true)

  •  0
  • daspianist  · 技术社区  · 5 年前

    上下文:我正在尝试从iOS应用程序向WatchOS应用程序发送消息。

    无论我尝试哪种配置,我都无法获得 session.isReachable == true Code=7007 "WatchConnectivity session on paired device is not reachable."

    以下是我在iOS端的设置:

    func detectIfAppleWatchPaired() { //called at the VC's viewDidLoad
        if WCSession.isSupported() { 
            let session = WCSession.default
            session.delegate = self
            session.activate() // activate the session
            
        }
    }
    
    
    func session(_ session: WCSession, activationDidCompleteWith activationState: WCSessionActivationState, error: Error?) {
    
        if activationState == .activated && session.isPaired { 
    
            if session.isReachable {
                print ("Success. I am able to reach the watch")
            } else {
                print ("CANNOT REACH") //This always happens
                //Omitted code that sends message to the watch
    
            }
        }
    }
    

    • 这个 SO answer 建议将调试器直接附加到监视的解决方法。但是,不会发送任何消息
    • Apple Dev forum 提到同样的问题。解决方法是将项目从debug设置为release。这也不起作用
    • 这个 Apple dev forum 提到了这一点 不会在模拟器中工作-但是,我在两个设备上运行。

    我是不是在iOS的手表设置方面遗漏了什么?

    0 回复  |  直到 5 年前