3 votos

¿Las aplicaciones de Geofence no funcionan en Android 7.1.1?

Así que tengo dos aplicaciones que utilizan Geofence. Nest (Auto-Away) y August (Auto-Unlock). Ambas hechas por empresas muy diferentes, que hacen cosas muy diferentes.

Me he dado cuenta de que si la aplicación NO está abierta, ninguna de estas funciones funciona. Sólo cuando abro la aplicación ocurre algo.

Por ejemplo, August me envía una notificación cuando detecta que salgo de casa. Salí de casa, y al volver saqué mis teléfonos, abrí la aplicación de August, y LUEGO apareció la notificación.

He probado a seleccionar las aplicaciones como "No optimizar" en los ajustes de optimización de la batería, pero eso no ha cambiado nada.

Tengo la mala costumbre de cerrar todas las aplicaciones de la barra de recientes, pero estoy intentando ver si dejándola abierta se arregla, pero realmente me gustaría una solución en la que no tuviera que hacer eso.

Estoy ejecutando Android 7.1.1 en un Nexus5X. ¿Qué puedo hacer?

EDITAR: Me he dado cuenta de que la Geofence de IFTTT funciona.

0 votos

¿Tienes instalada alguna aplicación de ahorro de batería como Greenify o Clean Master?

0 votos

Así que el objetivo es mantener estas aplicaciones funcionando en segundo plano, ¿verdad?

0 votos

@xavier_fakerat más o menos

1voto

Nathaniel DSouza Puntos 101

Sé que estoy respondiendo a mi propia pregunta, pero la mejor solución que encontré fue esta aplicación:

https://play.google.com/store/apps/details?id=com.atasoglou.autostartandstay&rdid=com.atasoglou.autostartandstay

Básicamente se reabría agosto cada vez que intentaba cerrarlo. No es muy elegante, pero cumple su función.

@Chahk inspiró esta respuesta, una vez que supe que sólo había que forzar su ejecución en primer plano, una simple búsqueda en Google me dio lo que necesitaba.

0voto

xavier_fakerat Puntos 1

Para que las aplicaciones sigan funcionando en el suelo las aplicaciones requieren un programa de servicio en funcionamiento. Esto lo puedes hacer:

  • Dar a las aplicaciones una mayor prioridad de memoria (para que no sean eliminadas cuando la memoria del sistema sea baja)
  • Poner en la lista blanca las aplicaciones de las funciones de ahorro de energía del teléfono, los eliminadores de tareas o los programas de hibernación
  • Habilitar una notificación persistente para que los servicios del programa sigan funcionando en segundo plano. (Ajustes >> Gestor de notificaciones >> Permitir siempre) Ver captura de pantalla:

ADM persistent notification

Captura de pantalla (haga clic en la imagen para ampliarla)

También mantenerlo funcionando en segundo plano a través del administrador del teléfono:

b

Captura de pantalla (haga clic en la imagen para ampliarla)

(Me disculpo por ocultar los nombres de algunas aplicaciones por otros motivos, pero confío en que no afecte a la calidad de la respuesta)

Alternativamente cuando se enraíza utilice este código en el terminal en cada lanzamiento de la aplicación :

echo "-17" > /proc/`pidof com.package.name`/oom_adj

O

Algunas aplicaciones para dispositivos rooteados son:

Gestor de la RAM/ Refuerzo de la memoria

A qué afecta esta aplicación:

  • OOM_ADJ (Fuera de memoria)

    Cada proceso tiene un valor que le da al kernel una pista sobre qué proceso puede matar en una situación de OOM (out of memory).

  • LMK (Low memory killer)

    Funciona con sus aplicaciones en la memoria. Afecta a tu multitarea y a la memoria libre. Pero Android trabaja con la memoria de forma diferente a la que usted puede estar acostumbrado. Android necesita tener las aplicaciones en ejecución en primer plano debido al cambio rápido entre sus aplicaciones. Esto significa que no es bueno que tengas demasiada memoria libre. El sistema le da tanta memoria como necesita.

    y

    Casillero de la memoria

    Memory Locker controla el archivo en el directorio /data y también controla los archivos del sistema en root para establecer oom_adj para todos los procesos en ejecución. Todas las aplicaciones bloqueadas se bloquean automáticamente después de cada reinicio, por lo que no es necesario bloquear sus aplicaciones de nuevo después de cada reinicio.

Créditos:

  1. Android -Mantener la aplicación viva
  2. Administrador de RAM

Tenía un problema similar con otras aplicaciones que se cerraban automáticamente, pero esto solucionó muchos problemas. Espero que sea de ayuda.

0 votos

No veo ningún menú de configuración como este en mi teléfono (Stock Android)

0voto

Chahk Puntos 15796

Para las notificaciones perdidas, parece que ambas aplicaciones no están usando Google Cloud Messaging (también conocido como GCM) o su sucesor, Mensajería en la nube de Firebase .

La única manera de que una aplicación siga ejecutándose cuando la deslizas fuera del menú Recientes, es si está configurada para ejecutarse en primer plano. Esto también evita que el sistema operativo destruya el servicio de la aplicación cuando el sistema tiene pocos recursos. Android requiere que cualquier aplicación que se ejecute en primer plano coloque una notificación permanente (la que no se puede deslizar) en la barra de estado. Esta característica es perfecta para la monitorización continua, como la geofencing. Una vez más, esto no es algo sobre lo que usted, como usuario final, tiene control, y un desarrollador debe implementar esta característica.

Yo enviaría comentarios a los desarrolladores de estas aplicaciones pidiendo que implementen estas características.

0 votos

¿Hay alguna forma de FORZAR una aplicación para que se ejecute en primer plano?

0 votos

@NathanielDSouza No de forma nativa en Android, pero podría haber algunas aplicaciones de terceros que intenten hacerlo.

PreguntAndroid.com

PreguntAndroid es una comunidad de usuarios de Android 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