AppClip – esta clase no es compatible con la codificación de clave-valor para la clave labelColor.
Pregunta
Tengo una aplicación existente en el AppStore y estoy creando una aplicación POC AppClip para ella. He creado la AppClip (usando storyboards) y estoy intentando reutilizar clases de la aplicación principal en Xcode. Tengo UILabels personalizados y UIButtons (incluyendo UIColor y UIFont personalizadas). He agregado esas clases a la membresía del objetivo de la AppClip. Cuando construyo la vista en el storyboard, todo se ve exactamente como quiero. Todos los IBDesignables funcionan como se espera. Cuando construyo la AppClip y la ejecuto en un simulador, se ejecuta pero sin mis clases personalizadas. Entonces, mis Labels parecen genéricos y mis botones parecen genéricos también.
He verificado dos veces todas mis conexiones de salida en mi controlador de vista y todo está configurado correctamente. Obtengo el error de codificación de clave de valor para cada etiqueta y botón en la pantalla.
Failed to set (labelColor) user defined inspected property on (UILabel): [
setValue:forUndefinedKey:]: esta clase no es compatible con la codificación de clave de valor para la propiedad labelColor.
¿Cómo comparto clases entre mi aplicación principal y la AppClip en tiempo de ejecución? ¿Necesitan ser incluidos explícitamente de alguna manera?
ACTUALIZACIÓN: Creo que el problema es que mis Clases personalizadas XXLabel & XXButton & XXColor & XXFont no están incluidos cuando la aplicación se construye. He agregado referencias a esos archivos a la AppClip y he agregado esos archivos a las fases de construcción de la configuración del proyecto de la AppClip.
La aplicación todavía carga mis etiquetas como UILabels y no como XXLabels (algunos con UIButton).
davy.ai
Solución
Parece que el problema era que las clases personalizadas no se incluyeron en la compilación de AppClip. Para solucionar esto, debes agregar referencias a las clases personalizadas en la configuración del proyecto AppClip y agregarlas a las fases de compilación. Después de hacer esto, el AppClip debería poder acceder a las clases personalizadas y mostrarlas correctamente.