Error WatchKit: no se puede encontrar la class de controller de interfaz para instanciar

Siempre que hago cualquier connection en mi subclass de WKIInterfaceController , obtengo un error de error de WatchKit error - unable to find interface controller class 'myClass' to instantiate y un indicador de actividad que aparece en el simulador y la vista no se carga. Desconecte todas las conexiones y la vista se muestre correctamente, pero siga recibiendo el error.

Intentó

No se puede encontrar la class de controller de interfaz 'InterfaceController' para instanciar

WatchKit: no se puede encontrar la class de controller de interfaz

WatchKit reloadRootControllersWithNames causando error, con pageController o después de push / pop

Dos enlaces sugieren un error. Si se trata de un error, seguramente esto no estaría presente en la versión de lanzamiento de XCode y todos experimentarían el mismo comportamiento que hace que watcKit sea completamente inútil.

Resolví este problema por:

1) eliminando el problema del file InterfaceController y volviéndolo a crear en la carpeta para WatchKit Extension en el proyecto (no solo en un grupo en Project navigator). De forma pnetworkingeterminada, xcode te ofrece la carpeta Watch App – tienes que cambiarla.

2) la class de configuration en Interface Builder, de modo que el module se configuró en ProjectName_WatchKit_Extension

Si el module no está configurado, xcode no podrá encontrar su class.

Para cualquier otra persona que tenga esto. La class debe establecerse en la membresía de destino correcta, es decir, la yourApp WatchKit Extension de yourApp WatchKit App en lugar de la yourApp WatchKit App al crear su class. También se puede editar en la membresía Target en el generador de interfaces.

Estaba teniendo los mismos problemas después de la reciente versión 8.2. Tuve que ir a cada uno de mis InterfaceControllers y ajustar su module de class personalizado a lo que se mostraba como una opción o "none".

En mi caso, WatchKitExtension nombre de Watch Kit Extension a WatchKitExtension , y se ejecutaba con éxito en el simulador, pero no funcionaba después de limpiar el proyecto completo.
Gracias a https://stackoverflow.com/a/29904047/104170 .
Para que funcione, solo necesitaba especificar el module correcto en mi file .storyboard

Después de agregar un nuevo controller de interfaz en WatchOS, el problema anterior se produjo debido a un error

" Nombre del module en class personalizada ": –

introduzca la descripción de la imagen aquí

Después de cambiar el module a la extensión anterior se resuelve el problema.

introduzca la descripción de la imagen aquí

Debe verificar que el controller de vista se encuentra en su fuente de compilation aquí: Seleccione Proyecto> Seleccionar objective de extensión de vigilancia> Fases de compilation> Fuentes de compilation

Asegúrate de hacer el nuevo miembro de la Clase de EXTENSIONES mientras creas la class.

Lo arreglé borrando el nombre del module en el storyboard para esa class de interfaz específica. (Que es una class objective-c).

Cuando cree su controller de interfaz de vistazo, asegúrese de agregarlo a la Extensión de la aplicación Watch. Este fue mi problema.

Al hacer clic en mi guión de observación> Controlador de interfaz Escena> Inspector de identidad (el icono del medio, de los 5 íconos que aparecen en el menu a la derecha de Xcode)> ¡Establecer el module en "[YourProjectName] Extension" funcionó para mí!

Solo mira el objective para la class y la interfaz . Se debería establecer en Extensión que sea todo

Lo solucioné configurando Module to Watch_Extension