Tengo una aplicación de iOS donde tengo algunas configuraciones en la aplicación de iOS relacionadas con el reloj. Solo quiero mostrarlos si el usuario tiene un Apple Watch compatible con mi aplicación.
En WatchConnectivity, puedo consultar la propiedad isPaired de WCSession para ver si el usuario tiene un reloj, pero no puedo entender cómo determinar la versión de watchOS (debe ser> 5.0 para usar mi aplicación).
¿Hay alguna manera de determinar la versión de watchOS desde la aplicación iOS?
ios
swift
apple-watch
watchos
Stephen
fuente
fuente
Deployment Target
a 5.0?Respuestas:
En realidad
isWatchAppInstalled
es la forma correcta de lidiar con este escenario.Como dice la documentación:
https://developer.apple.com/documentation/watchconnectivity/wcsession/1615623-iswatchappinstalled
La propiedad no mira dentro del paquete para ver si hay una aplicación Watch disponible. Solo volverá verdadero si la aplicación Watch está instalada en el Apple Watch actualmente emparejado. Si el usuario elimina la aplicación Watch del reloj, devolverá false.
fuente
let watchOSVersion = WKInterfaceDevice.currentDevice().systemVersion print("WatchOS version: \(watchOSVersion)")
Aquí hay dos posibles soluciones. El número 1 verifica el sistema operativo que si entiendo su pregunta ya lo sabe, pero luego el 2 verifica la versión del sistema operativo que es WatchOS 5.0 y posterior. Esto es lo que he hecho, así que espero que te ayude.
1)
fuente
#if targetEnvironment(watchOS)
. Si eso es posible con watchOS, y luego dentro de eso, puede verificar la versión de watchOS 5.