10 votos

¿Por qué no se inician las aplicaciones del App Store transferidas a ~/Aplicaciones en otra máquina?

He comprado algunas aplicaciones de la Mac App Store y las he instalado en mi ordenador personal. Me gustaría instalarlas en un ordenador de trabajo compartido. Por desgracia, no tengo acceso de administrador al ordenador del trabajo, así que no puedo hacerlo de la forma habitual.

He copiado las aplicaciones de mi ordenador de casa al ~/Applications del ordenador de trabajo, e intenté ejecutarlos, con un éxito desigual:

  • Algunas aplicaciones, cuando las ejecutas por primera vez, abren un cuadro de diálogo que dice "Iniciar sesión para usar esta aplicación en este ordenador" y te piden tu ID de Apple y tu contraseña, después de lo cual funcionan bien. (Ejemplo: DayOne, y la mayoría de las aplicaciones gratuitas)
  • La mayoría de las aplicaciones seguirán mostrando este cuadro de diálogo, pero por alguna razón no funcionará, incluso después de introducir tu ID y contraseña. (Ejemplo: BBEdit, Soulver, Twitterrific)

La(s) pregunta(s):

  • ¿Hay algo que pueda hacer para que la aplicación funcione?
  • Si no es así, ¿qué es lo que hace que la aplicación se niegue a iniciarse?

Editar : Cuando la aplicación falla, da un mensaje de consola "Exited with exit code: 173". Si entiendo bien, esto significa que la aplicación no es válida (lo que es de esperar cuando la copio de un ordenador a otro). Sin embargo, el proceso por el cual la App Store valida la aplicación, parece no funcionar cuando la aplicación no está en la ubicación adecuada. Además, parece probable que las aplicaciones que sí funcionan, como DayOne o las aplicaciones gratuitas, funcionen sólo porque no están comprobando que la aplicación haya sido comprada válidamente y, de hecho, funcionaría en cualquier ordenador sin ningún tipo de validación.

La pregunta sigue siendo: ¿hay alguna solución?

Editar de nuevo: No tengo ningún problema en copiar una aplicación en ~/Applications en mi ordenador de casa, incluso para un usuario diferente. Debido a que investigar (por no hablar de resolver) este problema requiere tanta molestia (incluyendo dos ordenadores o al menos una máquina virtual), estoy ofreciendo una recompensa.

12voto

Ryan Spears Puntos 1524

Parece que has dado con un interesante (léase: muy molesto) error en el proceso de validación de la App Store:

Para empezar, la ubicación en la que se copian las aplicaciones no entra en juego, y tampoco lo hace su estado como usuario administrador / no administrador. A pesar del hecho de que Apple afirma que esto debería ser posible en mis dos máquinas, no puedo conseguir que una aplicación copiada manualmente se ejecute ni como usuario estándar, ni como usuario administrador, ni en /Applications o en ~/Applications . Tampoco chwon y chmod El paquete para que se ajuste a las instalaciones regulares ayuda. La hoja de inicio de sesión de la App Store aparece (una vez), pero la aplicación sigue saliendo con el código de salida 173 después de eso.

Según Documentación de Apple para desarrolladores sobre la validación de los recibos del App Store El recibo que valida el uso de una aplicación es un GUID específico de la máquina. Cuando copias una aplicación a otra máquina, el GUID ya no coincide, lo que invalida el recibo (por el contrario, en tu propia máquina, siempre coincide, sea cual sea el usuario para el que instales la aplicación, de ahí que no tengas ningún problema al respecto). Las aplicaciones deben señalar un recibo inválido saliendo con el código de salida 173, y la función de la App Store storeagent se supone que debe tomar el relevo después de eso, solicitando las credenciales y generando un nuevo recibo, y volviendo a lanzar la aplicación en caso de éxito:

Si el sistema obtiene con éxito un recibo válido, relanza la aplicación. En caso contrario, muestra un mensaje de error al usuario, explicando el problema.

No mostrar ningún mensaje de error al usuario si la validación falla. El sistema es responsable de intentar obtener un recibo válido o informar al usuario de que el recibo no es válido.

Lo que ocurre en tu caso (y en el mío de prueba) es que la validación falla silenciosamente - como indica el hecho de que el recibo nunca se actualiza, pero tampoco se muestra ningún mensaje de error. Los registros muestran storeagent devoluciones:

promptResponse: <CKSignInPromptResponse:0x1080c4fb0 returnCode:1>

Este código no está documentado por Apple, y todo lo que he encontrado son discusiones de desarrolladores sobre este problema en un contexto de pruebas, donde parece estar relacionado con que los datos de iTunes Connect están incompletos (Geoff Pado tiene un resumen conciso aquí ).

Sea como sea, el panorama en su conjunto muestra claramente que la validación está fallando en camino que deja a las aplicaciones copiadas manualmente con un recibo inválido incluso después de introducir las credenciales correctas en la App Store. Sólo las aplicaciones que no comprueban su propia validez seguirán funcionando, como has señalado.

No es muy útil en su caso, Apple sólo recomienda borrar y volver a descargar desde la App Store para remediar el problema.

TL;DR: No se pueden copiar manualmente las aplicaciones compradas en la App Store de un ordenador a otro hasta que Apple arregle el proceso de validación de recibos necesario para ello. La ubicación de la instalación y los privilegios del usuario no entran en juego.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X