Se ha encontrado un error durante la ejecución (Domain = LaunchServicesError, Code = 0)

Recibí un error (Domain = LaunchServicesError, Code = 0) cuando intentaba iniciar mi aplicación en el simulador de iOS con Xcode 6. Busqué una solución en Google, pero no encontré nada práctico.

¿Qué significa este error?

Este error indica que hubo un problema con la instalación. Desafortunadamente, Xcode en realidad no imprime el contenido del mensaje de error que le daría más información, pero puede ver ~ / Library / Logs / CoreSimulator / CoreSimulator.log para ver el rest de los detalles del error. También habrá más información sobre el problema en el registro del sistema del dispositivo simulado (~ / Library / Logs / CoreSimulator / [Device UDID] /system.log); buscar mensajes de installd en el momento del error).

Las causas comunes para esto incluyen paquetes que faltan un Info.plist, claves faltantes en Info.plist de su paquete, o valores para algunas claves en Info.plist no permitidas.

Si el Info.plist de su aplicación no contiene un par clave / valor CFBundleVersion válido, es posible que su aplicación se instale correctamente la primera vez pero no se actualice. Muchos usuarios parecen solucionar este problema al hacer un “Restablecer contenido y configuración” después de cada instalación, pero sería mejor solucionar la causa raíz configurando una versión CFBundleVersion adecuada en Info.plist. Creo que iOS 8.2 ahora devuelve correctamente un error en la primera instalación en este caso y no solo en las actualizaciones, por lo que espero que este problema sea más obvio ahora.

Los usuarios con directorios de inicio en sistemas de archivos que no admiten enlaces duros (por ejemplo, directorios de inicio de red a través de AFP, SMB o algunos servidores NFS) también pueden tener problemas relacionados con el enlace directo. Si este es el caso, sugiero que cree una ruta en su sistema de archivos local HFS + para el desarrollo del simulador (por ejemplo: / var / simulator / [user]) y cree un enlace simbólico a esa ruta desde ~ / Library / Developer / CoreSimulator. Este problema en particular se corrigió en uno de los beta de iOS 8.2.

En otro caso, Build & Run siempre tendría éxito en el primer bash, pero los bashs subsiguientes a veces fallarían debido a un Info.plist cambiado (por ejemplo: porque las configuraciones del sistema de comstackción de alguien hacen que CFBundleVersion sea diferente en cada iteración). Por lo general, puede recuperar eliminando la aplicación instalada (presionando prolongadamente desde la pantalla de inicio o xcrun simctl uninstall [Device UDID] [app identifier] ) o borrando el dispositivo a su estado predeterminado. Para borrar el dispositivo, ejecute xcrun simctl erase [Device UDID] desde el terminal o elija Erase Contents & Settings en el menú del simulador de iOS. Este problema en particular se corrigió en uno de los beta de iOS 8.2.

Se está produciendo una instancia más reciente de este problema para los usuarios de Xcode 6.2. Si tiene una extensión de aplicación WatchKit incluida en su aplicación, no podrá instalarla en versiones del tiempo de ejecución de iOS Simulator anteriores a iOS 8.2. Como solución alternativa, deberá desactivar manualmente la extensión de la aplicación para instalarla cuando desee probar con iOS 8.1 y tiempos de ejecución anteriores.

Si necesita ayuda más específica, proporcione la totalidad del mensaje de error de CoreSimulator.log y cualquier mensaje de installd y CoreSimulatorBridge que aparezca más o menos al mismo tiempo en ~ / Library / Logs / CoreSimulator / [Device UDID] /system.log as eso revelará el problema subyacente.

¿Su proyecto incluye un widget o extensión? Si es así, el problema podría ser el identificador del paquete de su widget / extensión. Debería ser el mismo que el objective principal, con un punto y una cadena adicional. Así por ejemplo:

Objetivo principal: com.mycompany.myapp

Widget debería ser: com.mycompany.myapp.widget

Lo arreglé reiniciando el simulador:

Simulador de iOS> Restablecer contenido y configuración …

Ya que todos escriben lo que pasaron y cómo arreglaron su problema exacto, eso podría ser inútil.

El problema es que hay diferentes causas para el mismo mensaje de error y la forma correcta de resolverlo es abrir ~/Library/Logs/CoreSimulator/CoreSimulator.log y buscar allí el último mensaje. Este mensaje le da una buena pista y lo ubica en el camino correcto para resolver su problema (a veces se trata de identificadores de paquetes, a veces es un atributo faltante o extra en Info.plist, pero siempre se obtiene una pista descriptiva y buena).

Esta es la forma de reducir el problema y, finalmente, llegar a solucionarlo.

Buena suerte y nervios fuertes con Xcode.)

Z.

Para mí, solo limpié el proyecto y funcionó -> Producto -> Clean

TLDR: borre su Carpeta de comstackción del proyecto, y no tendrá este dolor.

(Además, registré esto como un error con Apple, ya que necesitan encontrar una manera de arreglar esto en Xcode)

Ninguna de estas soluciones funcionó para mí, me golpeé la cabeza contra varias paredes.
Miré el registro de CoreSimulator y me di cuenta de que estaba intentando construir una biblioteca que había borrado. No pude encontrar referencias en ninguna parte.

Luego vi a través de otra pregunta de SO que lamentablemente no puedo encontrar como referencia, si usted:

  1. Mantenga presionada la tecla de opción y luego la opción Producto-> Limpiar se convierte en Clean Build Folder
  2. Presiona eso y disfruta que tu error desaparezca

“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

En XCode 6

Se ha encontrado un error al ejecutar (Domain = LaunchServicesError, Code = 0)

Tuve este error después de hacer algunos cambios importantes en el código para acomodar las Pantallas de iPhone 6. en Xcode 6 (iOS8)

Seguí las opciones anteriores y descubrí que la única forma de solucionar esto era haciendo lo siguiente:

  1. Eliminado los datos derivados [vaya a Ventana >> Organizador >> (Encuentre su aplicación) Haga clic en Eliminar al lado de los datos derivados]
  2. Producto >> Limpio
  3. Restablecer contenido y configuración en Simulator
  4. Cambió la versión del paquete a 1.4.1 desde 1.4 en pList

    Gracias por todas las respuestas anteriores que me llevaron a esta etapa. Funcionó un encanto!

En mi caso, el error fue causado porque no configuré el ID de comstackción.

Configurando esto, inicia el emulador sin problema.

Otra cosa para probar, que funcionó para mí, después de reiniciar el simulador y hacer una comstackción limpia no ayudó, está borrando los datos derivados. Para hacer esto: vaya a Organizador haga clic en proyecto, haga clic en eliminar datos derivados botón. Esto sucedió después de trabajar en una extensión por un tiempo y volví a la sucursal habitual. Espero que esto ayude.

Esto es lo que me causó el problema: el número de comstackción para la aplicación principal y la extensión eran diferentes (incrementé el número de comstackción principal de la aplicación a 1.0.1.03, pero dejé la extensión en 1.0.1.02).

Hacer que coincidan me arregló el problema.

Abra la aplicación de la consola y mire allí. En mi caso, me dijo exactamente qué hacer. Yo vi:

ErrorDescription = El valor NSExtension.NSExtensionAttributes.WKAppBundleIdentifier de la extensión de aplicación WatchKit 2 no coincide con el ID del paquete de la aplicación WatchKit (se encuentra “com.myCompany.MyApp.MyApp.watchkitapp”; expected “com.myCompany.MyApp.watchkitapp”).

Entonces, fui a cada plist y revisé cualquier artículo relacionado con BundleID. Luego Limpie, reinicie, etc.

Tengo una aplicación que está configurada para usar diferentes ID de paquetes basados ​​en la configuración de comstackción. Al crear mi extensión de Apple Watch, Xcode generó todo usando mi ID de versión, así que tuve que revisarla y cambiarla manualmente para la depuración. Aquí están todos los lugares donde tuve que cambiarlo:

  • Build Settings -> Packaging -> Product Bundle Identifier WatchKit Extension Build Settings -> Packaging -> Product Bundle Identifier
  • WatchKit Extension Info.plist -> NSExtension -> NSExtensionAttributes -> WKAppBundleIdentifier (esto necesita usar el mismo prefijo que su aplicación complementaria)
  • WatchKit App Info.plist -> WKCompanionAppBundleIdentifier

El último me tomó un tiempo ya que la WatchKit App no aparece como una pestaña al ver la configuración de destino, tuve que ir directamente al archivo Info.plist sí.

Intente poner un número en [OBJETIVOS] – [General] – [Identidad] – [Versión (o comstackción)], si están vacíos.

Funcionó para mí

Espero que te ayude.

También tengo este error. En mi caso, el registro ~/Library/Logs/CoreSimulator/CoreSimulator.log era algo así:

Could not hardlink copy /Users/myUser/Library/Developer/CoreSimulator/Devices/60E569E7-6750-428A-A401-841BB081xxxx/data/Containers/Bundle/Application/70F24DDC-7954-46BF-B799-F807FD98yyyy/myApp.app to /Users/myUser/Library/Developer/CoreSimulator/Devices/60E569E7-6750-428A-A401-841BB081xxxx/data/Library/Caches/com.apple.mobile.installd.staging/temp.kOrJ9G/extracted/Payload/myApp.app with manifest /Users/myUser/Library/Developer/CoreSimulator/Devices/60E569E7-6750-428A-A401-841BB081xxxx/data/Library/Caches/com.apple.mobile.installd.staging/temp.kOrJ9G/extracted/com.apple.deltainstallcommands.com.mycompagny.myapp

gracias a esta respuesta. Mira mi aplicación info.plist. ¡la clave CFBundleVersion faltaba, así que la CFBundleVersion y ahora todo está funcionando!

Ninguno de los anteriores funcionó para mí, pero esto hizo:

Simplemente eliminé IceCream.xcworkspace / xcuserdata / xcuserdatad y luego reinicié el simulador y volví a ejecutar la aplicación. (Restablecer el simulador solo, no funcionó para mí.)

Mi caso fue sobre la comstackción del marco. He habilitado la opción ‘Copiar solo al instalar’ de Target-Build Phases- Embedded Frameworks- enter image description here

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

La gran explicación de Jeremy al menos me puso en la dirección correcta, pero a pesar de tener todos los identificadores de paquete y las versiones establecidas correctamente, el error aún persistía. Luego revisé la documentación de Apple que muestra que la extensión WatchKit (en su fase Copy Bundle Resources) copia la aplicación WatchKit. Esta aplicación WatchKit fue nombrada exactamente igual que mi aplicación iOS, causando que Xcode confundiera a los dos y leyera el plist equivocado, pensando que el identificador del paquete era incorrecto. Cambiar el nombre del Producto de la aplicación WatchKit a algo distinto finalmente lo resolvió para mí.

Si ha cambiado su identificación de paquete, asegúrese de hacer una comstackción limpia antes de tratar de comstackrla de nuevo. Vea cómo aquí: Cómo vaciar cachés y limpiar todos los destinos Xcode 4

Así que es un problema definitivo .plist. En mi caso estaba NSExtensionMainStoryboard vacío, al eliminar esta propiedad se solucionó el problema

Tuve este error al intentar construir el Proyecto Lister Xcode de Apple y ejecutarlo en el simulador.

Los elementos esenciales que lo arreglaron para mí fueron:

1) BundleID para la aplicación de iOS y la extensión de iOS tenían que ser diferentes 2) Proporcioné iCloud y grupos de aplicaciones para ambos objectives 3) Utilicé el “Problema de reparación” de Xcode para solucionar los problemas

Después de eso, pude construir y ejecutar la aplicación sin advertencias ni errores.

La pista del archivo de registro fue “… LegacyErrorString = DuplicateIdentifier, FunctionName = – [MIInstallableBundle performPreflightWithError:], SourceFileLine = 450, NSLocalizedDescription = El paquete principal tiene el mismo identificador (com.ACMECompany.Lister) como sub paquete en / Usuarios / stephen / Library / Developer / CoreSimulator / Devices / 5329928B-946B-40A4-B666-EFD11B96D11F / data / Library / Caches / com.apple.mobile.installd.staging / temp.HQ5d9X / extraído / Lister.app / PlugIns / Lister.appex ”

Tenía una versión de aplicación incorrecta establecida en el archivo de localización InfoPlist.strings . Urgh!

¡Hace una hora!

enter image description here

Elimina tu simulador y regenera uno.

Esto funciona para mi.

Quité la clave en el archivo .plist de la aplicación de visualización que no debería haber estado allí. Y el problema desapareció

Esto funcionó para mí: en la configuración del proyecto -> pestaña General -> sección Identidad, cambié el número de versión de algo así como 2.0.2 (tres dígitos) a 2.0 (dos dígitos) luego eliminé la aplicación en el simulador y ejecuté el proyecto nuevamente . No más errores después de eso.

Otra posible solución para agregar a todas las demás que sin duda se mantendrán por encima de la mía;)

Eliminé y luego restablecí un objective de Extensión de hoy para conservar los archivos de origen, pero después de probar todas las soluciones bajo el sol, me di cuenta de que no tenía fonts ni recursos en su objective. Puede encontrar esto también si su error detallado de servicios de inicio no puede encontrar su archivo de extensión de aplicación comstackda.

Por lo tanto, para abreviar, asegúrese de que su objective tenga algo incluido para comstackr o agrupar allí. Puede verificar sus membresías objective seleccionando los archivos relevantes en su navegador de proyectos (a la izquierda) y estableciendo sus marcas de verificación según corresponda en el inspector de archivos (esa es la primera pestaña a la derecha).

Tenía lo siguiente en mi registro …

 : Error Domain=LaunchServicesError Code=0 "(null)" UserInfo={Error=ExecutableTwiddleFailed... 

Esto se debió a que no se agregaron archivos fuente en el proyecto de extensión.

Este error apareció en mi sistema cuando no había espacio en el disco duro disponible. Libere algo de espacio en mi sistema para que funcione.

Mi problema fue que la extensión de contenedor para el proyecto de destino no estaba configurada.

Para solucionarlo tuve que ir al proyecto de destino -> configuración de comstackción -> Embalaje -> Extensión de envoltura .

Establecer esto como “aplicación” (sin comillas)

Esto solucionó el problema para mí