No se puede ejecutar la aplicación en Simulator: se encontró un error al ejecutar (Domain = LaunchServicesError, Code = 0)

No puedo ejecutar mi aplicación en el simulador después de tener problemas con el perfil de aprovisionamiento. Estoy haciendo una encoding rápida en Xcode 6 – beta 4. Esto estuvo bien antes del problema en el perfil del certificado.

He intentado limpiar la construcción. Comprobó la línea de comando a xCode6-beta4 para ejecutar. Verificó la implementación de la comstackción, se estableció en 7.0, por lo que swift no se quejará de la compatibilidad Se corrigió el error en el aprovisionamiento.

Esto sucede si el ID del paquete de su extensión no está prefijado con el ID del paquete de su aplicación. Por ejemplo, si su aplicación es com.mycompany.appname , su extensión debería ser algo así como com.mycompany.appname.today .

Algo más a tener en cuenta, si está usando Swift y está configurando una clase principal con NSExtensionPrincipalClass , querrá asegurarse de que su destino de extensión establezca “Define Module” en “Sí” y haga que el valor de NSExtensionPrincipalClass igual a “YourModuleName”. YourClassName “.

Lo arreglé reiniciando el simulador:

Simulador de iOS> Restablecer contenido y configuración …

Parece que hay varias razones para el error “domain = LaunchServicesError code = 0”. También lo encontré, mientras trato de reinstalar la aplicación en el simulador iOS8. No puedo volver a instalar, pero primero tengo que eliminar la aplicación anterior.

El problema fue resuelto por:

  1. En Xcode, complete el campo de Versión o Construcción vacío con el valor apropiado en su Target-> General-> Identity

  2. En Simulator, restablece el contenido y la configuración …

Después de eso, todo funciona bien.

Esto también ocurre cuando elimina la StoryBoard predeterminada del proyecto creado de plantilla de un widget de Hoy. Para solucionarlo, agregué NSExtensionPrincipalClass bajo NSExtension y lo NSExtension a la clase que contiene el controlador de vista de widgets de hoy, que es por plantilla Default TodayViewController .

Esto se ve así en Info.plist de la extensión:

NSExtension NSExtensionPointIdentifier String com.apple.widget-extension NSExtensionPrincipalClass String TodayViewController

  1. Producto -> Limpio

  2. Simulador de iOS> Restablecer contenido y configuración

  3. Reiniciar XCode

Ninguno de los anteriores funcionó para mí, sin embargo, eliminar los datos derivados solucionó el problema.

Para eliminar los datos derivados, vaya a Ventana> Proyectos, seleccione el proyecto actual y presione el botón Eliminar correspondiente.

“Restablecer contenido y configuración” de iOS Simutalor opciones de menú y el lanzamiento del simulador después de salir resolvió mi problema.

Restablecer contenido y configuración

La solución para mí no fue incorporar un marco que no se haya construido como un marco incrustable.

Encontré la causa del problema para mí.

Estoy usando ShareKit a través de pods. Este problema está relacionado con el SDK de GooglePlus que utiliza ShareKit y debe actualizarse debido a un cambio de política por parte de Apple. http://googledevelopers.blogspot.com.br/2014/09/an-important-announcement-for-ios.html

Así que reemplacé mi pod “ShareKit” con:

pod “ShareKit / Twitter”

pod “ShareKit / Facebook”

pod “ShareKit / Pocket”

pod “ShareKit / Evernote”

Al salir del subproyecto de GooglePlus, la aplicación ya se implementó y funciona bien en 8.0 simuladores.

Espero que esto ayude a alguien más.

He resuelto este problema gracias por los consejos. 🙂

Este problema siempre ocurre cuando construyes tu aplicación de extensión de teclado con el mismo identificador que tu paquete principal. Me gusta esto.

Si tiene este “com.codemagnus.ExAppMain” en su paquete principal, su extensión también debe tener este identificador “com.codemagnus.ExAppMain”. Esto dará como resultado un error de inicio de servicio si va a ejecutar en el simulador. Pero puedes crear una construcción. Sin embargo, el problema que encontré fue molesto. Esta aplicación no se puede instalar en tu dispositivo. : /

Si quieres correr en el simulador Debería tener este “com.codemagnus.ExAppMain.ExApp” en su teclado de extensión donde ExApp era su nombre de extensión. Y su paquete principal debería ser “com.codemagnus.ExAppMain”. Esto funcionará perfectamente con el simulador. Sin embargo, el resultado será “El identificador de paquete binario incrustado no está prefijado con el identificador de paquete de la aplicación principal”.

Identificador de paquete binario incrustado: com.codemagnus.ExAppMain.ExApp Identificador de paquete de aplicación principal: com.codemagnus.ExAppMain

Todavía estoy pensando y buscando una solución para resolver este problema para ipa build.

Esto me volvió loco. Comprobé todo lo sugerido aquí, reinstalé Xcode, reinicié mi computadora y nada funcionó. Después de verificar algunas confirmaciones previas, descubrí el problema.

En el contexto, estoy trabajando en una extensión de teclado personalizada en el Objetivo C. Al agregar un nuevo objective de extensión de teclado personalizado, se obtiene una clase de código auxiliar KeyboardViewController con el botón “Siguiente teclado”. Cambié el valor de NSExtensionPrincipalClass en Info.plist de la extensión para que fuera un nombre de clase diferente de KeyboardViewController y comencé a trabajar en él. Eventualmente decidí deshacerme del código KeyboardViewController porque era un código muerto.

Eliminar los archivos KeyboardViewController y eliminarlos de Xcode provocó este problema. Ponerlos de vuelta hizo que la aplicación funcionara nuevamente.

En mi caso, esto ha resuelto el problema.

El identificador de paquete no debe estar vacío. Puede encontrar el campo con la siguiente referencia:

enter image description here

NSExtensionPointIdentifier este error porque erróneamente cambié el valor de NSExtensionPointIdentifier . Pensé que se suponía que era una identificación para mi extensión, pero tiene que ser uno de estos valores que indica el tipo de extensión que es.

Empecé a recibir este error cuando cambié mi destino de implementación de 6.0 a 7.0. Descubrí que restablecer el simulador solucionó el problema, y ​​necesitaba hacerlo para TODOS los simuladores que eran relevantes para la aplicación. Pero si volví a 6.0 y volví a comstackr para cualquier simulador en particular, funcionó de inmediato, pero volver a 7.0 rompió el simulador y tuve que borrar la configuración nuevamente.

Obviamente, el objective de implementación afecta la encoding en el simulador, y la encoding es compatible hacia abajo, pero no hacia arriba. Además, el mensaje de registro no es de gran ayuda, ya que dice que la aplicación no se puede vincular a un archivo de caché utilizando un manifiesto (por ejemplo, los nombres de las rutas de acceso a la aplicación, el caché y el manifiesto).

Asegúrate de verificar la configuración de comstackción; desplácese hasta la parte inferior y asegúrese de que su prefijo de paquete definido por el usuario sea el correcto. Por lo general, com.whatever.

Solo configurarlo en la parte superior no siempre cambia esta configuración inferior. Esto finalmente funcionó para mí después de reiniciar el simulador, freír la carpeta derivada, etc.

Estoy bajo IOS 9.3, xCode 7.3

Xcode 7.3

Esto podría suceder simplemente porque su nombre de destino es demasiado largo. Intente cambiar su nombre de destino por algo más corto (recuerde cambiar su bundleIdentifier para que coincida).

Si está utilizando Apple Watch además del identificador de paquete, también debe asegurarse de que en info.plist la clave WKAppBundleIdentifier contenga el identificador de paquete de la aplicación de reloj correcta.

Recibí el error similar al iniciar la aplicación, a través de xCode, “El paquete principal tiene el mismo identificador que sub-paquete …”

Acorté el identificador de paquete en el “Proyecto -> General” para xCode8. Inicialmente, mi ID de paquete era com.companyname ..

El nombre de la aplicación tenía más de 20 caracteres. Una vez que acorté 12 caracteres, funcionó para mí.

Para entender qué está causando este error, primero debe consultar los archivos de registro del simulador. Estos se encuentran típicamente en ~/Library/Logs/CoreSimulator/CoreSimulator.log o en una ubicación similar. Por lo tanto, le recomiendo que primero observe el registro para identificar la causa raíz y luego investigar más a fondo. (Puede echar un vistazo a este hilo para ver dónde se encuentran los registros).

Por ejemplo, si obtiene un error como ErrorDescription=Failed to chmod /Users/username/Library/Developer/CoreSimulator/Devices/ entonces probablemente sea más fácil reiniciar su simulador. Para errores como ErrorDescription=WatchKit 2 app's bundle ID com.mydomain.AppName.watchapp is not prefixed by the parent app's bundle entonces es probable que haya un error con la configuración del ID del paquete principal de su proyecto.