La instalación de la aplicación falló debido a la autorización del identificador de la aplicación

304

No puedo instalar una aplicación watchOS 2 WatchKit debido a un derecho de identificador de aplicación. Esto sucedió después de activar Grupos de aplicaciones en la pestaña Capacidades.

Error completo:

La instalación de la aplicación falló

El derecho de identificador de aplicación de esta aplicación no coincide con el de la aplicación instalada. Estos valores deben coincidir para que se permita una actualización.

Captura de pantalla 1

Esto está ejecutando la aplicación en modo de depuración en un dispositivo físico. Ejecutar solo la aplicación iOS funciona bien.

Desactivé los grupos de aplicaciones nuevamente y eliminé los archivos de derechos que se agregaron, pero el mismo error.

Ric Santos
fuente
¿Pudiste encontrar la solución?
prasad1250
1
Sí, la respuesta de @ john-nesbitt hizo el truco
Ric Santos
1
En cuanto a "por qué" sucede (puede ser útil enumerar), en mi caso, en el cambio de cuenta de desarrollador. Se instaló en la cuenta A e intentaba ejecutarse después de cambiar a la cuenta B. (No tengo un archivo de autorización en el proyecto).
bauerMusic
Consulte primero la segunda respuesta, es más completa y no provocará la pérdida de datos.
arcady bob

Respuestas:

746

Tuve este problema con una aplicación de iPhone y lo solucioné siguiendo los siguientes pasos.

  • Con su dispositivo conectado y Xcode abierto, seleccione Ventana-> Dispositivos
  • En la pestaña izquierda de la ventana que aparece, selecciona tu dispositivo problemático
  • En el panel de detalles a la derecha, elimine la aplicación infractora de la lista de "Aplicaciones instaladas".

Después de hacer eso, mi aplicación se reconstruyó y se lanzó muy bien. Como su aplicación es watchOS, no estoy seguro de que tenga el mismo resultado, pero vale la pena intentarlo.

John Nesbitt
fuente
59
Eso borrará la aplicación y todo su contenido. Necesito actualizar y no perder todos mis datos en el proceso si es posible.
Robert Gummesson
65
Así que
borraste
66
Mi aplicación no se mostraba en la lista de Windows-> Dispositivos, pero la eliminé del teléfono (presionando y manteniendo presionado el ícono) que solucionó el problema. Gracias John
Steve A
16
Quiero probar la migración de la aplicación a la nueva versión, y no puedo hacerlo si elimino la aplicación existente (versión AppStore) del dispositivo.
mixtly87
3
Claro que funciona, pero en mi caso el problema es que tengo que hacer esto cada vez que una persona diferente del equipo usa el mismo dispositivo, lo cual es molesto, ¡así que borrar no es una buena solución!
v01pe
97

Tuve este problema y no pude resolverlo sin eliminar y reinstalar la aplicación (jugar con los perfiles de aprovisionamiento, como algunos sugirieron aquí, no ayudó).

Sin embargo, no perdí mis datos de prueba existentes. A continuación, le indicamos cómo hacerlo para cualquier persona que tenga este problema en el futuro:

  1. Antes de eliminar la aplicación, abra la ventana "Dispositivos" de Xcode (que es cmd-shift-2).
  2. Seleccione su dispositivo y busque su aplicación en la lista "Aplicaciones instaladas".
  3. Haga clic en el ícono de ajustes y seleccione "Descargar Contenedor ...". Esto copiará todos los datos de la aplicación a tu Mac. Guarda eso en alguna parte por ahora.
  4. Elimine la aplicación y vuelva a instalarla desde Xcode. Elimina la aplicación de Xcode (haz clic en el botón de detener) para que no se ejecute.
  5. De vuelta en la ventana "Dispositivos", haga clic en el ícono de ajustes y seleccione "Reemplazar contenedor ...". Seleccione los datos que descargó en su Mac en el paso 3.

Xcode restaurará los datos de la aplicación guardados anteriormente. Ahora tiene sus datos de prueba anteriores y la aplicación debería ejecutarse.

Tom Harrington
fuente
3
Esto funciona particularmente bien cuando se utiliza la función de "aprovisionamiento automático" en Xcode 8.
Steve Madsen
2
Realmente desearía haber leído esto antes de usar la respuesta. Entonces los datos del estado se habrían conservado. (Ver mi comentario arriba).
Tim Maher-De Troyer
1
Esta debería ser la respuesta seleccionada.
galactikuh
100% la respuesta correcta SI NO QUIERES PERDER TUS DATOS. Se debe aceptar la respuesta.
arcady bob
Tengo el mismo escenario pero mis datos útiles están en los valores predeterminados del usuario. ¿Podemos recuperar eso de todos modos? Se agradece la ayuda
Rahish
29

Elimine cualquier versión anterior de la aplicación de su iPhone y luego Limpie-> Construir y ejecutar nuevamente. Su aplicación debería funcionar sin problemas en su dispositivo.

Además, asegúrese de no haber seleccionado el Certificado de distribución en la Configuración del proyecto al intentar ejecutar su proyecto directamente en su dispositivo.

n.by.n
fuente
28

Recibirá este error cuando su prefijo AppID no coincida con el prefijo de la aplicación instalada previamente. Si su aplicación ya está en la App Store, no podrá enviar actualizaciones sin restaurar el prefijo original de AppID o ponerse en contacto con Apple.

Instrucciones de Apple para manejar este problema: https://developer.apple.com/library/content/technotes/tn2319/_index.html#//apple_ref/doc/uid/DTS40013778-CH1-ERRORMESSAGES-UPGRADE_S_APPLICATION_IDENTIFIER_DOES_NOT_MATCHALL_THE_INP_MATCHALL_THE_INP_MATCHALL_THE_INP_MATCHALL_THE_INP_MATCHALL_THE_INP_

Si no tenía la intención de cambiar el prefijo de AppID, Xcode firmará su aplicación con el perfil de aprovisionamiento incorrecto.

Si tiene la intención de cambiar el prefijo de AppID (debido a que la aplicación se transfirió a un nuevo desarrollador, o si está migrando desde un AppID anterior a 2011), debe comunicarse con Apple para migrar un AppID existente a un nuevo prefijo.

También debe agregar el previous-application-identifiersderecho a su aplicación, enumerando todos los ID de aplicación anteriores (con prefijos antiguos). Y debe pedirle a Apple que genere un perfil de aprovisionamiento que incluya el previous-application-identifiersderecho.

Darren
fuente
2
Mi perfil comodín que utilicé para el desarrollo expiró y creé por error uno específico de la aplicación. Después de leer tu publicación, creé un nuevo perfil comodín y lo usé. Trabajado como un encanto. La tuya es la publicación más precisa y debe ser la respuesta aceptada. Eliminar la aplicación y perder los datos no es una buena opción para muchos de nosotros. ¡Gracias!
Neoscribe
17

Resolví esto sin eliminar la aplicación

Con el proyecto abierto en xcode. Proyecto -> Configuración de compilación -> Firma de código -> Perfiles de aprovisionamiento (desplegable) Probablemente esté configurado en automático y esté eligiendo el perfil incorrecto. Abra el menú desplegable y elija el correcto, luego vuelva a ejecutar la aplicación.

Dustin
fuente
Al principio intenté eliminar y reinstalar la aplicación. No funcionó Luego me desplacé hacia abajo y vi esta respuesta. La compilación estaba fallando con este error solo para UItests automatizados, pero no para la compilación regular, y resulta que se seleccionó el perfil de aprovisionamiento correcto para la compilación regular pero no para la compilación UItests automatizada. Entonces, la actualización solucionó el problema ...
auspicious99
5

Me enfrenté al mismo problema y me quedé atrapado durante varios minutos y después de una búsqueda, la solución más simple que encontré es simplemente eliminar la aplicación instalada previamente de su dispositivo manualmente e intentar ejecutar la aplicación desde Xcode nuevamente.

Espero que te ayude. Todo lo mejor...

Kunal Gupta
fuente
4

Pasos

  1. Con su dispositivo conectado y Xcode abierto, seleccione Ventana-> Dispositivos
  2. Ahora seleccione la aplicación y descargue el contenedor usando el ícono de configuración
  3. Eliminar la aplicación
  4. Instale la aplicación nuevamente usando Xcode
  5. Parar desde Xcode
  6. Vaya a Ventana-> Dispositivo y seleccione la aplicación y reemplace el contenedor que es copia de seguridad de la aplicación anterior
Kirit Vaghela
fuente
Los pasos del contenedor no son necesarios, pero son buenos si desea mantener los datos. Gracias.
Awesomeness
2

Intenté algunas cosas, como actualizar / hacer nuevos perfiles de aprovisionamiento, corregir derechos en el Centro de miembros de Apple y en el proyecto, pero en mi caso, simplemente tuve que eliminar la aplicación y volver a ejecutarla.

o_O


El derecho de identificador de aplicación de esta aplicación no coincide con el de la aplicación instalada.

NOTA: dice " ... no coincide con la aplicación instalada "

Supongo que me sucedió porque agregamos una nueva extensión de aplicación y debe haber habido algunos problemas de migración relacionados con el objetivo. No estoy seguro pero de todos modos

staticVoidMan
fuente
Sí, elimine la aplicación instalada en su dispositivo y vuelva a ejecutarla desde Xcode. Tuve este problema porque agregué un objetivo en Xcode.
Syed Asad Ali
2

Descubrí que había cambiado accidentalmente el perfil de aprovisionamiento para tener un comodín.

Es decir, pasó de com.companyname.appnickname a com.companyname. *

Hice un nuevo perfil de aprovisionamiento con el nombre completo correctamente nombrado, lo descargué, configuré el Destino-> configuración de compilación-> perfil de aprovisionamiento para ese nuevo perfil, reinicié xcode, obtuve un extraño error de xcode (parecía confundir a mis diversos desarrolladores de aplicaciones inicios de sesión), reinició xcode nuevamente, ¡y funcionó!

No quería eliminar la aplicación existente, porque estaba tratando de probar qué sucede cuando un usuario actualizó su aplicación a una versión más nueva, así que instalé la versión de la tienda de aplicaciones y luego ejecuté mi xcode con la versión más nueva (que actúa como 'actualizar' la aplicación sin eliminar ningún dato de usuario).

arinmorf
fuente
Solo necesita asegurarse de estar usando el mismo perfil de aprovisionamiento con el que compiló originalmente la aplicación.
mj662
2

Tuve el mismo error y lo resolví cambiando el Identificador de paquete a algo nuevo. Después de eso, construye el proyecto sin problema.

Mis pasos

  • Abrir Xcode
  • Ir a la pestaña General
  • Encontrar identidad
  • Cambie el Identificador de paquete a algo nuevo.

Cambio de identificador de paquete

F_Boris
fuente
2
Esto no funciona si desea probar una actualización de la aplicación.
Raphael Oliveira
2
Al cambiar la ID del paquete, ha creado efectivamente una nueva aplicación.
Steve Madsen
2

Tuve el mismo problema. El bundle.identifier y el nombre del proyecto deben ser los mismos. Al menos ese era mi problema.

Rawand Saeed
fuente
1

Desinstalar la aplicación principal de iPhone, la aplicación Watch y compilarlas nuevamente resuelve el problema.

oOEric
fuente
1

Tuve el mismo error hasta que restauré el reloj a los valores predeterminados de fábrica según https://forums.developer.apple.com/thread/17948

"Aparentemente, si tiene una aplicación WatchOS 1 existente y trata de actualizarla a WatchOS 2, el identificador del paquete cambia y causa este error. Si actualiza su reloj, deberá restablecerlo si había instalado la aplicación WatchOS1 antes de actualizar esa aplicación a WatchOS2 ".

Piotr Farbiszewski
fuente
También tuve que restaurar el reloj a los valores predeterminados de fábrica. Había probado todas las otras sugerencias relevantes, pero fue en vano. También había regenerado todos los perfiles de aprovisionamiento para garantizar que fueran coherentes con los derechos. Mi situación era tal como se describe aquí: tenía una aplicación WatchOS 1 existente, que estaba tratando de actualizar a WatchOS 2.
René
1

Aunque seguí algunos pasos lógicos: desinstalar la aplicación, reconstruir el proyecto, la única solución que me funcionó fue: reiniciar XCode . (XCode 8.1)

Ispas Claudiu
fuente
1

Esto sucedió cuando intenté instalar sobre una compilación ad hoc.

Kelsey
fuente
1

En la mayoría de las respuestas a este problema, hay un aspecto crítico que se pasó por alto y que fue mencionado por el autor de la pregunta original. La aplicación debe instalarse sin eliminar la instalación existente. En mi caso, la aplicación utiliza una base de datos SQLite que almacena bastantes datos para el usuario. Obviamente, si elimina la aplicación, entonces elimina los datos. Una solución que me permitió probarlo de la misma manera que un usuario lo actualizará era imprescindible.

En mi caso, el problema era Xcode usando un perfil de aprovisionamiento generado automáticamente por Xcode. Esto probablemente sucedió porque obtuve una computadora nueva y no transferí el perfil de aprovisionamiento de distribución. Sin mencionar que no había actualizado la aplicación en casi 2 años. Por lo tanto, mi perfil de aprovisionamiento original (que contiene el identificador de la aplicación de derechos) desapareció hace mucho tiempo. Solución: en las preferencias de Xcode-> Cuentas-> Seleccione el ID de Apple apropiado-> Ver detalles-> En Perfiles de aprovisionamiento, haga clic con el botón derecho en el perfil generado por Xcode para esa aplicación (tiene el prefijo XC iOS) y seleccione Mover a la papelera .

Perfiles de aprovisionamiento de Xcode en Cuentas

En el sitio web del desarrollador, cree un nuevo perfil de distribución con el ID de su aplicación. Descargue el nuevo perfil, haga doble clic y Xcode debería instalarlo automáticamente. Por el contrario, puede volver a los perfiles enumerados en Xcode y tocar el botón Descargar junto a su perfil recién creado. Compile la aplicación e intente ejecutar nuevamente. Por cierto, mi Xcode está configurado para administrar automáticamente la firma de código, que además de este problema funciona muy bien.

hoptown
fuente
1

TLDR: elimine la aplicación del dispositivo y vuelva a ejecutarla.

En mi caso:
1. Compilé y ejecuté la aplicación en el dispositivo iPhone .
2. Abro en la configuración de las capacidades y enciendo el iCloud
3. Luego trato de ejecutar la aplicación nuevamente, boom, error: "Error de instalación de la aplicación El derecho de identificación de la aplicación no coincide con el de la aplicación instalada. Estos valores debe coincidir para que se permita una actualización.

4. Luego borré la aplicación del iPhone (después de leer las respuestas aquí)
5. Todo funciona bien

usuario1105951
fuente
1

Para las personas que podrían ser parte de más de un equipo, este puede ser su problema:

  • Si la identificación del paquete de la aplicación está codificada en su Info.plist, entonces Xcode puede confundirse y provocar este berrinche.

Arreglar:

  • Asegúrese de que el ID del paquete esté configurado como:

    $ (PRODUCT_BUNDLE_IDENTIFIER)

Juan Carlos Ospina Gonzalez
fuente
0

La respuesta aceptada no funcionó para mí. Para que funcione, tuve que restablecer el Apple Watch a la última copia de seguridad disponible.


fuente
0

Recibí este error después de pasar de 5s a 6s. Recuperé los nuevos 6s de una copia de seguridad del viejo iPhone. Debido a esto en el nuevo iPhone, se instaló la aplicación anterior.

¡La aplicación anterior no aparecía en la lista de 6s "Aplicaciones instaladas"! Eliminé manualmente esta vieja aplicación de los 6s y todo estuvo bien.

Ronald Hofmann
fuente
0

Encontré este problema porque construí el teléfono con mi firma de código desactivada desde otra máquina, por lo que debe desinstalar la aplicación del teléfono antes de instalar / construir en el teléfono con la firma de código activada.

gollumullog
fuente
0

Esto se resuelve fácilmente eliminando la aplicación anterior de su dispositivo. Y comience a reinstalar nuevamente. Esto funciona bien para mi.

usuario6217789
fuente
0

Enfrenté el mismo problema hoy y lo resolví simplemente cambiando el Nombre para mostrar y el Identificador de paquete de la aplicación anterior que también se instaló en mi iPhone. Pasos:

Xcode -> General tab -> Find Identity -> Change Bundle Identifier

Entonces, ahora tengo dos mismas aplicaciones con la misma funcionalidad pero con dos nombres e identidades diferentes.

Irfan
fuente
0

En mi caso fue por el certificado.

debido a que mi propio certificado para firmar la aplicación no formaba parte del equipo de desarrolladores (nuevo empleado), no estaba permitido actualizar la aplicación de App Store a una nueva versión.

Entonces, en caso de que le suceda y no pueda obtener un certificado "bueno", simplemente clone la versión de git appStore, abra dos proyectos de Xcode, compile la versión anterior, actualice la configuración como desee, compile la nueva y tu estas listo.

un poco sucio y complicado, pero espero que pueda ayudar a alguien.

Keuha
fuente
0

Mi problema fue la identificación de la aplicación en combinación con el certificado utilizado para crear los perfiles de aprovisionamiento. Ninguno de mis perfiles de aprovisionamiento funcionaba porque ninguno de ellos era "elegible" (creado con un certificado que coincidía con el ID de la aplicación). Había trasladado el desarrollo a una nueva máquina, así que quizás esta fue la razón más profunda. En cualquier caso, tuve que crear un nuevo certificado, luego nuevos perfiles de aprovisionamiento con ese certificado teniendo cuidado de elegir la ID de aplicación correcta al crearlos. Buena suerte.

Alyoshak
fuente
0

Ninguna de las respuestas anteriores funcionó para mí. Mi problema: había instalado una versión de la aplicación de Testflight, así que eliminé tanto la aplicación anterior como la versión de Testflight, y estoy trabajando nuevamente.

NEOline
fuente
0

La aceptación de los acuerdos pendientes del sitio web del desarrollador y del sitio web de iTunes Connect y la reapertura del proyecto en X-Code resolvieron la situación para mí.

Vishal Chaudhry
fuente
0

Para mí, esto ocurrió después de actualizar a XCode 11, como han dicho los demás, es un problema de firma. Lo que me solucionó fue ir al Portal del desarrollador> Certificados e identificadores Editar el perfil de aprovisionamiento que está utilizando

Lista de certificados Captura de pantalla

Verá que hay un certificado para XCode 11 (como se ve en la captura de pantalla). Marque esa casilla, vuelva a descargar el perfil y actualice sus proyectos firmando con el nuevo perfil.

marvios
fuente
0

Con MacOS Catalina, su iPhone se mostrará en la barra lateral 'Ubicaciones' de las ventanas del Finder (siempre que tenga configuradas las preferencias del Finder para mostrar dispositivos externos); luego puede acceder a los archivos a través de la opción 'Archivos' que está disponible en la barra cerca de la parte superior de la ventana, justo debajo del título (en mi caso tuve que hacer clic en '>' a la derecha).

SomaMan
fuente