4 votos

El misterio del inicio automático de Spotify

Al intentar eliminar el inicio de Spotify en el momento del inicio de sesión, encontré un comportamiento interesante: aunque sus listas no están presentes en ninguna de las ubicaciones conocidas, como Library/LaunchAgents y Library/LaunchDaemons, y tampoco está configurado como Open at Login (Abrir al iniciar sesión) ni en el Dock ni durante el cierre de sesión, se las arregla para iniciarse de algún modo.

He creado un nuevo usuario de prueba, he iniciado la aplicación una sola vez, me ha recibido un aviso de inicio de sesión, he cerrado la aplicación y ha decidido que se inicie desde entonces. He probado a borrar todo el contenido de la carpeta de inicio del usuario en el Terminal mientras se ejecutaba como otro usuario (rm -rf /usuarios/usuariodeprueba/*), pero Spotify se iniciaba igualmente.

Me pregunto cómo lo hacen. Es bastante fácil de comprobar descargando y ejecutando la aplicación, no hay necesidad de crear una cuenta.

El objetivo de la pregunta es entender el mecanismo y no impedir que se abra (hay un interruptor en la aplicación).

0 votos

Una idea que se me ha pasado por la cabeza ahora mismo es ejecutar fs_usage|grep otify mientras se usa ese interruptor, pero ahora mismo no puedo conectarme y no puedo acceder a ese interruptor.

0 votos

Puede decirnos qué Mac y qué OSX

0 votos

OSX 10.11.6, Mac Pro de principios de 2008

2voto

nenne Puntos 41

Muchas funcionalidades, como elementos de inicio de sesión, extensiones/kextos, LaunchAgents u otros Helpers pueden ser empaquetados en el paquete de aplicaciones en estos días.

Si observas detenidamente el contenido de Spotify.app, haciendo clic con el botón derecho del ratón o con el botón de control y seleccionando "Mostrar contenido del paquete", encontrarás una carpeta "Library" dentro de la carpeta Content. Dentro de ella hay una carpeta LoginItems, que contiene el elemento de inicio de sesión. /Applications/Spotify.app/Contents/Library/LoginItems/StartUpHelper.app/Contents/MacOS/StartUpHelper

Este "StartUpHelper" lanzará Spotify al iniciar la sesión. Este parece ser el comportamiento por defecto de la aplicación.

Usted escribió:

De lo contrario, se iniciaría por cada nuevo usuario añadido al sistema.

Ciertamente, he visto que Spotify se lanza automáticamente en un usuario creado después de haberlo instalado, cerrando la sesión del usuario que creó la nueva cuenta y configurando la nueva cuenta de usuario desde la pantalla de inicio de sesión (alternativamente, fueron necesarios dos reinicios para que Spotify se lanzara al iniciar la sesión en la nueva cuenta de usuario).
Sólo cuando se instalaba Spotify después de crear el usuario, no se lanzaba al iniciar la sesión.

Una prueba para intentar explicar por qué algunos usuarios no ven el lanzamiento automático de Spotify al iniciar sesión:

Creé y configuré un nuevo usuario antes de que se instalara Spotify en una cuenta de usuario diferente y, después de que se instalara Spotify (de nuevo en una cuenta de usuario diferente), probé varios cierres de sesión/inicios de sesión y reinicios para asegurarme de que no se lanzaba automáticamente al iniciar sesión para este nuevo usuario.
También anoté el DIRECTORIO DE USO DARWIN del usuario ejecutando el siguiente comando...
getconf DARWIN_USER_DIR

También tenía un usuario para el que Spotify se lanzaba automáticamente al iniciar la sesión cada vez. Una vez más, anoté el DIRECTORIO DE USUARIOS de DARWIN del usuario.
Al entrar en este último usuario mencionado dejé Spotify y borré...
com.apple.LaunchServices-231-v2.csstore
...del directorio de usuarios de Darwin.
A continuación, copié el mismo archivo del directorio de usuarios de Darwin del otro usuario (para el que Spotify no se iniciaba automáticamente al iniciar la sesión) en el directorio de este usuario (en Finder, para asegurarme de que el propietario del archivo también cambiara).

Luego cerré la sesión y reinicié varias veces el usuario, para el que Spotify sí se lanzaba automáticamente, pero el comportamiento se detuvo y Spotify se abstuvo de lanzarse.

PS. Para obtener más información sobre los elementos de inicio de sesión dentro de un paquete de aplicaciones, le sugiero que se registre en una cuenta de desarrollador gratuita y se familiarice con (algunos de) los documentación sobre el diseño de la aplicación (aunque no es necesario que te registres, sólo tienes que leer la documentación).

0 votos

Claro, pero por mucho que empaques el paquete no se explica cómo debe arrancar la aplicación por sí misma. Tiene que haber algo empezando a hacerlo.

0 votos

@Joe No sé a qué te refieres con "por mucho que empaques el paquete". La preferencia que establezcas en la aplicación la inicia o no. El StartUpHelper lo inicia entonces. ¿Has leído el documento que he enlazado en el sitio de desarrolladores?

0 votos

Sí, lo he leído. Una parte hace referencia a la apertura de aplicaciones como parte de la realización de algún trabajo, como cuando se abre un documento, y luego hay una referencia a Info.plist que supuestamente controla el inicio de una aplicación de ayuda; no hay cadenas a las que hagan referencia en el Info.plist de la aplicación de ayuda de Spotify. Además, no veo por ningún lado cómo un plist colocado en todo el sistema en una aplicación de ayuda podría "saber" si debe iniciarse para un usuario concreto, y eso es precisamente lo que ocurre. De lo contrario, se iniciaría para cada nuevo usuario añadido al sistema.

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