Подтвердить что ты не робот

Как проверить, подключены ли часы iPhone и apple

Есть ли способ уведомить пользователя в Apple Watch о том, что iPhone сейчас выходит за пределы диапазона и когда он возвращается в диапазон. Как мы можем сделать это в расширении часов.

Спасибо заранее.

4b9b3361

Ответ 1

Так что на WatchOS 2 это возможно!

Вам нужно сделать на стороне iPhone:

Сначала:

import WatchConnectivity

Тогда:

   if WCSession.isSupported() { // check if the device support to handle an Apple Watch
        let session = WCSession.defaultSession()
        session.delegate = self
        session.activateSession() // activate the session

        if session.paired { // Check if the iPhone is paired with the Apple Watch
                // Do stuff
        }
    }

Надеюсь, это поможет вам:)

Ответ 2

С watchOS 2.0 вы можете. Для этого вы должны добавить их в свой ExtensionDelegate, если хотите, чтобы ваш Apple Watch получил уведомление:

func watchKitSetup() {    
    if (WCSession.isSupported()) {
        let session = WCSession.defaultSession()
        session.delegate = self
        session.activateSession()

        // In your WatchKit extension, the value of this property is true when the paired iPhone is reachable via Bluetooth.
        // On iOS, the value is true when the paired Apple Watch is reachable via Bluetooth and the associated Watch app is running in the foreground.
        // In all other cases, the value is false.
        if session.reachable {

        }
    }
}

func applicationDidFinishLaunching () {
    self.watchKitSetup()
}

// Called when session.reachable value changes, such as when a user wearing an Apple Watch gets out of range of their iPhone.
func sessionReachabilityDidChange(session: WCSession) {
    if session.reachable {

    }
}

Вы также должны добавить WCSessionDelegate в свой ExtensionDelegate.

Ответ 3

С официальной точки зрения Apple не указала, как это будет обрабатываться.

Однако, учитывая область сопряжения и связи, обрабатываемую ОС без участия приложения, кажется почти уверенным, что любые уведомления пользователю о проблемах с подключением на часах (и на конце телефона) будут обрабатываться ОС Watch как Что ж. Я предполагаю, что пользователю будет предоставлена ​​возможность разрешить потерю подключения или выйти из приложения Watch, если они этого не сделают. С точки зрения разработчика, весьма вероятно, что наши приложения не смогут отличить неразрешенную потерю связи и пользователя, обычно выходящего из приложения, причем одно и то же уведомление отправляется на расширение просмотра для обоих, но это только предположение.

Следует отметить, что нет стороннего кода разработчика, работающего на часах для текущих приложений Watch, только пользовательского интерфейса, поэтому даже неурегулированная потеря соединения не приведет к потере данных. Если Watch Extension (работает на iPhone) выходит из ОС из-за потери соединения с часами, он все равно сможет выполнять обычное хранение и очистку данных.

Ответ 4

Из текущей точки знания это, вероятно, будет невозможно.

От Apple Архитектура приложений WatchKit

После выбора сцены WatchKit сообщает, что спаренный iPhone запускается расширение WatchKit и создать объекты, необходимые для управления этим место действия. Когда сцена полностью настроена, она отображается на Apple Смотреть. Передача информации между приложением WatchKit и Расширение WatchKit выполняется прозрачно за кулисами.

Это означает, что код выполняется на iPhone. Если iPhone недоступен, запуск чата на часах будет невозможно.

Ответ 5

Вы можете найти все уведомления об изменении состояния соединения в документации WCSession.