9 votos

Ignorar la solicitud de "evitar el sueño" de una aplicación específica

A veces tengo el problema de que mi macbook no se duerme, incluso con la tapa cerrada. Después de investigar un poco, he localizado el problema en la aplicación Spotify; cuando la aplicación está abierta, aunque no se esté reproduciendo ninguna canción, mi macbook no se duerme y acaba quedándose sin batería. No necesito que Spotify mantenga mi mac despierto (por razones obvias, me basta con un reproductor de vídeo o un juego en su lugar); ¿hay alguna forma de ignorar su petición de evitar el reposo sin que afecte a otras aplicaciones? Sé que podría salir de Spotify cuando no lo use, pero soy propenso a olvidarlo y es muy molesto encontrar mi mac completamente agotado...

EDIT: para ser más claro, no busco una solución sobre Spotify en concreto (podría simplemente desinstalarlo y olvidarme de él), sólo busco una opción que sea la predeterminada tanto en Linux como en Windows, es decir, que el usuario anule siempre cualquier configuración cuando cierre la tapa.

2voto

orangesherbert Puntos 104

Para iniciar manualmente el reposo en el mac y anular las aplicaciones que impiden el reposo, ejecute

pmset sleepnow

en la terminal

Editar

¡¡¡Estoy de acuerdo, la especificación de Apple es defectuosa, Apple necesita arreglar esto!!! En el caso de que el sistema no funcione, debería haber una forma de anular la opción de "evitar el sueño", pero lo anterior es lo mejor. solución He encontrado...

...y si quieres algo que haga un poco más de comprobación (algunas aplicaciones que he descubierto todavía impiden dormir con el comando anterior)

function slp2 {
  #add a list of programs here that you will always wish to close
  pkill -x qemu-system-i386
  pkill -x qemu-system-x86_64
  sleep 2
  assertion=$(pmset -g assertions | egrep 'PreventUserIdleSystemSleep');
  canSleep=${assertion:34:1};
  if [ $canSleep != "0" ]; then
    say "cannot sleep, please close offending applications"
  else
    pmset displaysleepnow
    say "goodnight, rest well"
  fi
}

También puede asignar esto a un comando de Keyboard Maestro para no tener que abrir un terminal y escribir. Keyboard Maestro tiene un disparador 'Al dormir el sistema' (posiblemente hay algunos otros comandos, ¡el cierre de la tapa tal vez!) que puede ayudar más.

1voto

Steve Evans Puntos 155

Tu MacBook debería dormir siempre con la tapa cerrada. Si su Mac no duerme con la tapa cerrada, esto sugiere un problema.

Hay excepciones:

  • Algunos MacBooks pueden conectarse a pantallas externas y, una vez conectadas, la tapa del MacBook puede cerrarse de forma segura sin activar el reposo del sistema.

  • Anteriormente ha sido posible instalar una extensión del kernel de terceros para anular el comportamiento de MacOS y dejar de dormir con la tapa cerrada . Hacer esto conlleva un riesgo y debe evitarse.

Bloqueo del sueño

Es difícil que los procesos del espacio de usuario bloqueen el sueño. Las afirmaciones de sueño nunca deben bloquear un sueño iniciado por el usuario, ya sea mediante el cierre de la tapa o la solicitud de sueño del Finder. Utilice pmset para ver las afirmaciones de potencia actuales:

pmset -g assertions

0 votos

Conozco el problema de las pantallas externas y no es mi caso; además no he instalado nada que altere la gestión de la energía (conozco herramientas como Caffeine, pero simplemente no las necesito en mi macbook). Cuando la tapa está cerrada el ordenador suele estar apagado, pero he experimentado una o dos veces que no era así: la configuración de "evitar el sueño" actuaba por encima

1 votos

El comportamiento que está viendo sugiere un error de nivel inferior en MacOS, un problema con el hardware conectado, o un error en el hardware del Mac. Esto supone que no hay extensiones del kernel de terceros instaladas.

1 votos

Creo que voy a ir por el camino más fácil y tirar de spotify :-) También intentaré entender si algo va mal en mi macbook

1voto

matthieu Puntos 1

A veces tengo este problema con Spotify. Una aplicación puede bloquear el sueño incluso cuando la tapa del portátil está cerrada, es decir, llamando:

[[NSProcessInfo processInfo] beginActivityWithOptions:NSActivityUserInitiated reason:@"Good Reason"];

Supongo que no deberíamos hacer eso para evitar AppNap pero la documentación no es muy clara.

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