"El archivo" MyApp.app "no se pudo abrir porque no tiene permiso para verlo" al ejecutar la aplicación en Xcode 6 Beta 4


273

Cada vez que intento ejecutar mi aplicación en Xcode 6 Beta 4 obtengo el error:

The file "MyApp.app" couldn't be opened because you don't have permission to view it.

Este error aparece sin importar a qué simulador o dispositivo apunte.

Yo he tratado:

  • Eliminar todos los datos derivados del organizador en Xcode
  • Reparación de permisos en mi disco
  • Elevación manual de los permisos del MyApp.app construido
  • Reiniciando mi computadora

¿Alguien más se ha encontrado con este problema y ha encontrado una solución?

Captura de pantalla


1
Tengo el mismo problema con XCode 6.1. Al principio, el problema era solo con el simulador, ahora, después de seguir algunas pistas en esta publicación, también tengo el mismo error al ejecutar mi teléfono objetivo.
Bamaco

1
Seguí la solución @YuAn. Funciona muy bien para el simulador. Gracias Pero cuando trato de compilarlo en el dispositivo, sigo recibiendo el mensaje que dice "No tengo permiso para verlo". El archivo myapp.app en el directorio de productos en xcode y también en el directorio de datos derivados se muestra bloqueado incluso después de intentar compilar después de eliminar el contenido de los datos derivados.
Srinivasan N

44
Otra forma (estúpida) de desencadenar este problema: compile una aplicación con solo recursos y sin archivos de origen. No me preguntes cómo sé eso :)
Krumelur

44
Producto> Limpio, resuelve esto por mí
mazorati

¡En mi caso ninguno de estos no funcionó! Una vez que elimino el archivo pilst de Xcode y lo adjunto nuevamente al proyecto, ¡funciona de maravilla! Espero ayudarlos Chicos !!
Ravi

Respuestas:


252

Yo uso Xcode6 GM. Encontré el mismo problema. Lo que hice fue ir a Configuración de compilación -> Opciones de compilación. Luego cambié el valor del "Compilador para C / C ++ / Objective-C" a Compilador predeterminado.ingrese la descripción de la imagen aquí


146

¿Tiene el problema también en DISPOSITIVO (no solo simulador)?


Las otras soluciones solo me lo arreglaron en el simulador, no en el dispositivo.

Para mí, este problema ocurrió (en Xcode 6) cuando intentaba cambiar las propiedades principales de info.plist al intentar cambiar el nombre de mi aplicación.

En info.plist , cambié el Executable Filenombre a otro que no sea el predeterminado ${EXECUTABLE_NAME}...

Había confundido este campo con el campo que cambia el nombre de la aplicación debajo del icono en el trampolín.


10
En mi caso, esto funcionó gracias. Había estado cambiando otros campos similares en mi archivo <appname> -Info.plist, y una vez que volví a cambiar el archivo ejecutable a $ {EXECUTABLE_NAME} como sugeriste, se compiló y ejecutó.
Slowburner

Gracias ... lo mismo fue mi caso
Bala Vishnu

Muchas gracias @Albert Renshaw, tu respuesta resolvió mi problema. Estoy buscando una solución para eso desde los últimos dos días.
Nilesh Kikani

Mismo problema, el nombre del campo es "Nombre para mostrar del paquete" para cambiar el nombre debajo del icono
WebOrCode

1
Esto me llevó a mi solución, que era que había obtenido un Info.plist adicional cuando incluí la fuente de una biblioteca externa en mi código, y tenían un Info.plist dentro de su carpeta de grupo de activos. La eliminación de esa lista de información adicional solucionó mi problema.
chadbag

145

En Xcode haga lo siguiente

Ventana -> Organizador -> Proyectos -> La aplicación con el problema -> botón Eliminar en Datos Derivados.

Luego limpié el proyecto y listo

trabajos


Seguí la solución @YuAn. Funciona muy bien para el simulador, pero cuando trato de construirlo en el dispositivo, sigo recibiendo el mensaje que dice "No tengo permiso para verlo". El archivo myapp.app en el directorio de productos en xcode y también en el directorio de datos derivados se muestra bloqueado incluso después de intentar compilar después de eliminar el contenido de los datos derivados. ¿Alguna idea de lo que salió mal?
Srinivasan N

esto funcionó para mí PERO sigue sucediendo. No puedo eliminar continuamente los datos derivados cada vez que quiero ejecutar la aplicación en el simulador ...
zumzum

Estoy enfrentando el mismo problema, probé varias soluciones, pero no funcionó para mí. La ayuda será apreciada
Giriraj.Mulay


45

Lo arreglé limpiando una carpeta de compilación. Simplemente fui al menú 'Producto' y Opción + Haga clic en 'Limpiar'. Después de eso se resolvió un problema.


30

Hubo un problema con el Info.plist del proyecto. Creé un nuevo proyecto con el mismo nombre en Xcode 6 beta 4 y luego reemplacé el Info.plist del proyecto real por el nuevo. El proyecto luego se construyó y funcionó bien.

Mire la diferencia, parece que el plist podría haberse mezclado de alguna manera con el plist de un patio de recreo. El identificador del paquete era "com.apple.dt.playground.iOS-18300-13" y el ejecutable y los nombres del paquete eran "iOS" junto con algunas otras rarezas.

Este es el diferencial completo en caso de que alguien lo necesite como referencia:

        <key>CFBundleDevelopmentRegion</key>
        <string>en</string>
        <key>CFBundleExecutable</key>
-       <string>iOS</string>
+       <string>${EXECUTABLE_NAME}</string>
        <key>CFBundleIdentifier</key>
-       <string>com.apple.dt.playground.iOS-18300-13</string>
+       <string>com.myCompany.${PRODUCT_NAME:rfc1034identifier}</string>
        <key>CFBundleInfoDictionaryVersion</key>
        <string>6.0</string>
        <key>CFBundleName</key>
-       <string>iOS</string>
+       <string>${PRODUCT_NAME}</string>
        <key>CFBundlePackageType</key>
-       <string>AAPL</string>
+       <string>APPL</string>
        <key>CFBundleShortVersionString</key>
        <string>1.0</string>
-       <key>CFBundleSupportedPlatforms</key>
-       <array>
-               <string>iPhoneSimulator</string>
-       </array>
+       <key>CFBundleSignature</key>
+       <string>????</string>
        <key>CFBundleVersion</key>
        <string>1</string>
-       <key>DTPlatformName</key>
-       <string>iphonesimulator</string>
-       <key>DTSDKName</key>
-       <string>iphonesimulator8.0</string>
-       <key>LSBackgroundOnly</key>
-       <true/>
        <key>LSRequiresIPhoneOS</key>
        <true/>
+       <key>UIMainStoryboardFile</key>
+       <string>Main</string>
        <key>UIRequiredDeviceCapabilities</key>
        <array>
                <string>armv7</string>
        </array>
+       <key>UISupportedInterfaceOrientations</key>
+       <array>
+               <string>UIInterfaceOrientationPortrait</string>
+               <string>UIInterfaceOrientationLandscapeLeft</string>
+               <string>UIInterfaceOrientationLandscapeRight</string>
+       </array>
 </dict>
 </plist>

Sí, tuve un problema similar. El archivo Info.plist estaba en formato de archivo binario. Tuve que convertirlo
Luca Torella

28

He tenido el mismo error en Xcode 8.2. La razón por la que me enteré, se agregó otra lista de información en mi proyecto al agregar la biblioteca (copiar manualmente).

Para que Xcode se confunda al seleccionar Info.plist correcta .

Acabo de eliminar esa lista de información de la biblioteca agregada.

Entonces está funcionando bien sin ninguna alerta de permiso.


También puede cambiar el nombre de Info.plist a FRAMEWORK_NAME_HEREInfo.plist
Jeremy Kelleher

Lo mismo aquí, copiando de otro proyecto
Firas Shrourou el

Esto es exactamente cuál era mi problema. Agregué otra carpeta de archivos rápidos y tenía un archivo plist allí. Eliminé ese archivo plist y todo está bien ... ¡Gracias!
Lkabo

17

Compruebe si ha cambiado el archivo ejecutable => $ (EXECUTABLE_NAME) a ​​cualquier otro nombre. Si ha cambiado este nombre, entonces muestra este error. Reemplácelo con $ (EXECUTABLE_NAME).


Sí, me pasó al intentar cambiar el nombre de la aplicación. El desarrollador de la temporada solo entró en plist distraídamente y cambió el "Archivo ejecutable" cuando en realidad quiero cambiar el "Nombre del paquete"
MobileMon

Esto me lo arregló. Sucedió después de cambiar el nombre de mi proyecto. Gracias.
emiliomarin

14

Producto -> Limpiar (cambio de comando K) lo arregló para mí


Buen recordatorio de que a veces la solución simple es la que funciona.
Pescolly

Se requirió un reinicio limpio y Xcode aquí bajo Xcode 7.2.1. La limpieza sola me llevó a un "error desconocido" sin ningún intento de compilación.
Tommy

13

¡¡Dios mío!! Pasé horas para resolver este problema.

En XCode 7.3 estaba teniendo un proyecto sin problemas.

Error que hice

Acabo de agregar carpetas físicas y moví mis archivos a ellas, comenzó el problema.

Lo intenté todo

  • Compilador predeterminado
  • Limpiar y construir
  • Restablecer simulador y reiniciar simulador, Xcode, iPhone incluso mac
  • Info.plist actualizada
  • Eliminar datos derivados
  • Editar el permiso en la carpeta del proyecto
  • Comprobando mis arquitecturas

nada funcionó :(

Como resolví

Estaba a punto de crear un nuevo proyecto y luego simplemente eliminé las carpetas físicas que agregué, ¡compilación limpia y SÍ!

¡¡Funciona!!

ingrese la descripción de la imagen aquí


1
Sí, esto fue para mí también.
yeahdixon

Esto me ayudó. pero pensé que puedo usar la referencia de carpeta. extraño.
user1105951

13

Intente "cmd + shift + k" para limpiar el proyecto y reconstruir. Al menos funcionó para mí


11

Tuve un problema similar (xCode 6.2) para el código de muestra descargado. Traté de conjunto Executable Namea Default in Info.plistpero esto no funcionó.

En su lugar, cambie el compilador para C / C ++ / Objective-C al compilador predeterminado (Apple LLVM 6.0) en lugar del compilador no compatible (com.apple.compilers.llvmgcc42) para el proyecto.

Captura de pantalla


@iOSRocks: ¡Bienvenido amigo!
Jayprakash Dubey

10

1) Ir en primer lugar Opciones de compilación.

2) Luego cambió el valor del "Compilador para C / C ++ / Objective-C" a Compilador predeterminado.

limpio y funcionando :-)


1
Para aclararlo: 1. Vaya a Configuración de compilación (elija Todo y Combinado ) 2. Busque Opciones de compilación 3. Configure el compilador para C / C ++ / Objective-C en Compilador predeterminado
nburk

¿Por qué las personas votan esta copia de la respuesta mejor calificada?
Kiran

10

A veces, abrir un proyecto antiguo en una nueva versión de Xcode recibirá este mensaje.

Vaya a Navegador de problemas y siga la pista de advertencia 'Actualizar a configuraciones reconmimentadas'.

Boom, magia!


10

Descubrí que cambiar mi compilador a LLVM 6.0 en las Opciones de compilación fue suficiente para mí (xcode 6.1)

ingrese la descripción de la imagen aquí


10

Recibí el mismo error en mi Xcode 6.1.1 para un proyecto descargado de gitHub que se comprometió hace 4 años. Para mí, configurar Arquitecturas en el valor predeterminado Arquitecturas estándar (armv7, arm64) y Compilador para C / C ++ / Objective-C en Compilador predeterminado en Configuración de construcción funcionó.


9

Recientemente encontré el mismo problema para ejecutar un proyecto antiguo (creado inicialmente en Xcode 4.x) en Xcode 6.0.1.

Solucioné el problema cambiando las Arquitecturas en la configuración del edificio al valor predeterminado, que es " Arquitecturas estándar (armv7, arm64) ".

Espero que esto pueda ayudar a cualquiera que tenga problemas similares :)


Esta respuesta debe marcarse como la correcta @drewag
Fede Cugliandolo

parece que hay diferentes problemas detrás de este mensaje de error críptico, de todos modos esto es lo que resolvió mi problema con XCode 6.1
Fabio Napodano

9

He tenido este error con varios de mis proyectos más antiguos que salgo del armario para actualizar. Parece que usar Xcode 6 con un código anterior parece provocar esto por alguna razón.

He arreglado esto en todos los proyectos con los que he hecho esto:

  1. Eliminar datos derivados
  2. en Producto: hacer una limpieza
  3. vaya a Configuración de compilación en el Destino del proyecto, vaya a Opciones de compilación y cambie el valor del "Compilador para C / C ++ / Objective-C" a ' Compilador predeterminado '.

9

Tuve el mismo problema en mi proyecto. Más tarde descubrió que el archivo de terceros ( fmdb para SQLite) utilizado en el proyecto contenía Info.plist .

¡Simplemente eliminar el archivo Info.plist funcionó para mí!

Info.plist


A mí también me funcionó.
mkll

9

Mi aplicación funcionaba bien en XCode 9.4, pero cuando abrí mi proyecto en XCode 10 estaba experimentando este problema. Para mí, el problema era la configuración de compilación. Encontré la respuesta en esta página. https://forums.developer.apple.com/thread/112141 .

En resumen, vaya a Archivo> Configuración del espacio de trabajo ...> Generar sistema y cámbielo a "Sistema de compilación heredado"


8

Bueno, en mi caso, solo cambio el nombre de los valores Bundle Namey Executable fileal info.plistmismo nombre del proyecto. Funcionó para mi.


8

Intenté todas las respuestas enumeradas y ninguna de ellas fue útil. El problema se debió a la existencia de otro archivo plist vinculado desde un submódulo a través de cocoapods. Afortunadamente, este era mi propio módulo, así que simplemente eliminé esta lista del proyecto de submódulo y reinstalé los pods.

solución

Más tarde entendí que la clave del problema estaba en el nombre de ese segundo plist: simplemente info.plist. Puede cambiar el nombre del archivo y volver a vincularlo a través de una sourcessección de un submódulo

Ese segundo archivo plist tenía un nombre único, por lo que se suponía que Xcode no se frustraría. Incluso mi configuración de destino apuntaba a una lista principal, no a unainfo.plist . Parece que Xcode toma consideraciones especiales sobre ese nombre

El error reproducido en Xcode 6.4 y Xcode 7.0


Algo similar me pasó a mí. Mi Info.plist no se configuró correctamente, por lo que XCode tomó la primera Info.plistvez que encontró en la carpeta del proyecto, que pertenecía a alguna dependencia no relacionada.
Ohad Schneider

gracias a dios, me acabas de salvar horas de depuración de Xcode sin sentido '
Alex

6

Tuve este problema similar. De alguna manera, mi valor para el archivo ejecutable clave se mezcló. Simplemente cámbielo nuevamente a $ {EXECUTABLE_NAME} (en su proyecto> Información). ¡Trabajó para mi!


1
Una cosa a tener en cuenta es que el mío se configuró en $ (EXECUTABLE_NAME) y actualizarlo a $ {EXECUTABLE_NAME} solucionó el problema para mí.
Eric

5

No sé si el problema está relacionado, pero tal vez pueda ser una solución para cualquiera que esté tirando de los pelos como yo.

En mi caso, tengo un proyecto con muchos objetivos. Cada objetivo es una personalización de ese proyecto de la base que es una Cocoa Touch Static Libraryy los objetivos, Applications. Incluso si el mainarchivo se agrega a la compilación de la biblioteca, pero no en cada destino, aparece ese mensaje de error. Entonces, ¿qué hice? Agregó manualmente el mainarchivo a cada objetivo en la Compile Sourcessección y bingo, todo bien.


Gracias, esto ayudó mucho.
JakeP

5

Para mí, el error estaba en el archivo .plist en la clave CFBundleExecutable. Cambié el nombre del ejecutable eliminando un espacio que estaba entre dos palabras. (Por ejemplo: de "Wild Racer" a "WildRacer"). ¡Tomó 1 día para detectarlo!

¡Xcode es tan inútil en la depuración!


4

En mi caso, main.m que contiene la función main (...) no figuraba en la lista de "Compilar fuentes" en "Fases de compilación". Para verificar si este es el caso, ingrese en Fases de compilación y mire, si su main.m aparece en la lista "Compilar orígenes".


1
No sé cómo descubriste esto, y no fue mi problema exacto, pero me llevó a la solución, así que ¡GRACIAS!
Ri_

3

Lo que me resolvió fue configurar Build Active Architecture Only de No a Yes .


3

con código X 6.3.2

[Configuración de compilación] Opciones. [Todos] - [Opciones de compilación] - [Compilador para C / C ++ / Objective-C] - [Compilador predeterminado (Apple LLVM 6.1)]

Luego reconstruye el proyecto, y se ejecuta bien.


2

En mi caso, ayudó a cerrar Xcode, reparó los permisos con la Utilidad de Discos. Solo después de un reinicio funcionó a las mil maravillas.


Tuve este problema después de actualizar OSX hoy. Esto lo resolvió en menos de un minuto.
tonyedwardspz 01 de

2

Como también me enfrenté a este problema hoy por la mañana y ninguna de las respuestas me ayudó particularmente en mi caso. Y después de intentarlo durante horas, descubrí el problema.

En realidad, mientras trabajaba en storyboard por error, simplemente cambié el nombre de mi " Main.storyboard " a " .storyboard " y lo cambié de nuevo a " Main.storyboard " . " resolvió mi problema.

SOLUCIÓN (Según mi problema) : es posible que haya cambiado el nombre de cualquier archivo debido a que xcode no pudo cargarlo y planteó un problema. Por ejemplo: como se mencionó anteriormente, el caso de cambiar el nombre de " Archivo ejecutable "
Área de posible problema: pueden ser los últimos archivos en los que estaba trabajando.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.