О Swift и WatchConnectivity. Информация о пользователе Transfer работает, но Интерактивный обмен сообщениями не

голоса
0

Я написал код пользователя Информация о передаче, как показано ниже. (Я хочу, чтобы отправлять сообщения с iPhone, чтобы посмотреть.)

//iPhone project
if (WCSession.isSupported()) {
        session = WCSession.default

        session?.delegate = self
        session?.activate()}
    session!.transferUserInfo([titles: List_watch,Colors_watch: c_w])

//Watch project

func session(_ session: WCSession, didReceiveUserInfo userInfo: [String : Any] = [:]) {

//do something}

Это работает, но когда я использую интерактивный обмен сообщениями, как показано ниже она не работает.

 //iPhone project
if (WCSession.isSupported()) {
        session = WCSession.default

     session?.delegate = self
     session?.activate()}
     session!.sendMessage([titles: List_watch,Colors_watch: c_w], replyHandler: { replyDict in }, errorHandler: { error in
                    print(\(error))

                })

//Watch project

func session(_ session: WCSession, didReceiveMessage message: [String: Any], replyHandler: @escaping ([String: Any]) -> Void) {

//do something}

Тогда эта ошибка ErrorHandler говорит,

Ошибка домена = WCErrorDomain Code = 7004 «WatchConnectivity сессия не была активирована.» UserInfo = {NSLocalizedRecoverySuggestion = Активировать WatchConnectivity сеанс., NSLocalizedDescription = WatchConnectivity сессия не была активирована., NSLocalizedFailureReason = Функция activateSession не называется.}

Это говорит WatchConnectivity сессия не была активирована, однако, когда я просто использовать User Info Transfer, работает правильно. Поэтому я подумал, что сессия была активирована. Что эта проблема? Кто-нибудь знает?

Задан 27/11/2018 в 15:03
источник пользователем
На других языках...                            

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more