Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Desarrollo en Delphi para Android
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos


Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 23-11-2015
Kalikatres Kalikatres is offline
Miembro
 
Registrado: abr 2010
Posts: 6
Poder: 0
Kalikatres Va por buen camino
Dejar una aplicación siempre en primer plano

Hola a todos y enhorabuena por esta magnífica página.

Estoy 'retomando' el Delphi y desarrollando una aplicación para Windows/Android y no sé como resolver una cuestión que seguro que es muy tonta.

En Android, mientras se me ejecuta la aplicación se me apaga la pantalla y el teléfono móvil se bloquea al rato de estar ejecutándola, teniendo que volver a desbloquear la pantalla para volver a la aplicación, (este es el comportamiento normal del teléfono móvil).

¿Cómo hago para que la aplicación esté siempre en primer plano y que no se apague la iluminación de la pantalla?

Y ya puestos...¿Cómo mandar a aplicación a segundo plano apagando la pantalla y que vuelva a primer plano y se ilumine la pantalla si ocurre un evento determinado?

Muchas gracias a todos por vuestro tiempo y perdonad por mi ignorancia.
Responder Con Cita
  #2  
Antiguo 23-11-2015
Avatar de mamcx
mamcx mamcx is offline
Moderador
 
Registrado: sep 2004
Ubicación: Medellín - Colombia
Posts: 3.911
Poder: 25
mamcx Tiene un aura espectacularmamcx Tiene un aura espectacularmamcx Tiene un aura espectacular
Eso es un comportamiento errado en una plataforma movil, y hostil contra el usuario. Va ser muy dificil justificar el porque quieres hacer eso.
__________________
El malabarista.
Responder Con Cita
  #3  
Antiguo 23-11-2015
Kalikatres Kalikatres is offline
Miembro
 
Registrado: abr 2010
Posts: 6
Poder: 0
Kalikatres Va por buen camino
Hola Mamcx

Simplemente quiero que la aplicación funcione como un navegador, Tomtom, Sygic, etc. que te muestre constantemente dónde estás. Y si te acercas a un hito concreto te advierta del tiempo que llevas desde la última vez que pasaste por ahí, la aplicación es un medidor de tiempos por vuelta para un Kart que se compara con otro Kart también en pista. Además quiero que el piloto vea constantemente el tiempo que está haciendo en la vuelta.

Última edición por Kalikatres fecha: 23-11-2015 a las 20:08:53.
Responder Con Cita
  #4  
Antiguo 23-11-2015
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.021
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Un GPS no es muy apropiado para eso. En todo caso te sirve para aprender cómo hacer un programita así, pero nada más.
Responder Con Cita
  #5  
Antiguo 23-11-2015
Kalikatres Kalikatres is offline
Miembro
 
Registrado: abr 2010
Posts: 6
Poder: 0
Kalikatres Va por buen camino
Sé que no es lo más adecuado, pero son los mimbres que tengo para hacer el cesto. Si tenéis alguna sugerencia para mejorar la aplicación os estaré agradecidísimo, sobre todo eso, poder dejar la pantalla activa constantemente.
Responder Con Cita
  #6  
Antiguo 23-11-2015
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.021
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Busca por PhoneWakeState, creo recordar.
Responder Con Cita
  #7  
Antiguo 23-11-2015
Avatar de AgustinOrtu
[AgustinOrtu] AgustinOrtu is offline
Miembro Premium
NULL
 
Registrado: ago 2013
Ubicación: Argentina
Posts: 1.858
Poder: 15
AgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en bruto
Este tema
Responder Con Cita
  #8  
Antiguo 24-11-2015
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.233
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por Kalikatres Ver Mensaje
En Android, mientras se me ejecuta la aplicación se me apaga la pantalla y el teléfono móvil se bloquea al rato de estar ejecutándola, teniendo que volver a desbloquear la pantalla para volver a la aplicación, (este es el comportamiento normal del teléfono móvil).
Cita:
Empezado por mamcx Ver Mensaje
Eso es un comportamiento errado en una plataforma movil, y hostil contra el usuario. Va ser muy dificil justificar el porque quieres hacer eso.
Yo creo que en este caso es el acertado. Cualquier aplicación de seguimiento de rutas por GPS debe comportarse así. Apagar la pantalla sería un funcionamiento incorrecto.
Es, por ejemplo, lo que hace Maps (aplicación para móviles); Que por cierto funciona muy bien. O infinidad de otras como runastic, endomondo, el propio tracks de google,...

Cita:
Empezado por Kalikatres Ver Mensaje
Simplemente quiero que la aplicación funcione como un navegador, Tomtom, Sygic, etc. que te muestre constantemente dónde estás. Y si te acercas a un hito concreto te advierta del tiempo que llevas desde la última vez que pasaste por ahí, la aplicación es un medidor de tiempos por vuelta para un Kart que se compara con otro Kart también en pista. Además quiero que el piloto vea constantemente el tiempo que está haciendo en la vuelta.
Me parece muy interesante.
Lo único que tendrás que tener en cuenta, es que la fiabilidad del GPS sea buena.
Según los modelos y el precio (como es normal) de los receptores GPS de los móviles tienen más o menos sensibilidad y por lo tanto más o menos exactitud.

No estaría de más hacer una prueba empírica con un móvil, para ver realmente si las posiciones, tiempo y velocidad son correctas (o con poco márgen de error).

Las mediciones GPS tendrán que ser con muy poco lapso de tiempo, dado que la velocidad es alta y la posición en cada momento no sigue un trazado recto (más bien todo lo contrario), como podría ser en un recorrido de coche (para el que utilizarías google maps).

Cita:
Empezado por Casimiro Notevi Ver Mensaje
Un GPS no es muy apropiado para eso. En todo caso te sirve para aprender cómo hacer un programita así, pero nada más.
Realmente no hay otra forma de hacerlo. Si la sensibilidad es buena (**), puedes tener en cada momento localización, velocidad, tiempos de vuelta,...
Eso sí, me queda esta duda (**).
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #9  
Antiguo 24-11-2015
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.021
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Cita:
Empezado por Neftali Ver Mensaje
Realmente no hay otra forma de hacerlo. Si la sensibilidad es buena (**), puedes tener en cada momento localización, velocidad, tiempos de vuelta,...
Eso sí, me queda esta duda (**).
Si es para algo profesional, una competición o algo así, no sirve. Cualquier carrera de vehículos van demasiado rápido como para que un GPS (de los que nos venden a nosotros) sea lo suficientemente preciso y rápido como para controlar esos lapsos de tiempos. Imagina una carrera en la que dos vehículos llegan casi juntos, donde la diferencia se mide en décimas o centésimas de segundos (incluso en milésimas, a veces), es imposible con un GPS controlar eso.
Por eso digo que si es a modo didáctico o para "carreras entre amigos", sí. Pero profesionalmente, no sirve.
Responder Con Cita
  #10  
Antiguo 24-11-2015
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.233
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por Casimiro Notevi Ver Mensaje
Si es para algo profesional, una competición o algo así, no sirve. Cualquier carrera de vehículos van demasiado rápido como para que un GPS (de los que nos venden a nosotros) sea lo suficientemente preciso y rápido como para controlar esos lapsos de tiempos.
Correcto.
A ese nivel de precisión no sirve.
Pero para velocidades y tiempos por vuelta (nunca hablando de milésimas) puede dar algo aproximado.

Si lo que se necesita está a ese nivel, tal y como dice Casimiro deberás pensar en otra cosa.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #11  
Antiguo 24-11-2015
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.021
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
De todas formas, creo recordar que en los ajustes de preferencias de android se puede cambiar para que la pantalla no se apague nunca

Cita:
Empezado por Kalikatres Ver Mensaje
¿Cómo hago para que la aplicación esté siempre en primer plano y que no se apague la iluminación de la pantalla?
Responder Con Cita
  #12  
Antiguo 24-11-2015
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.233
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Por aquí hablan del tema.

Necesitarás asignar a tu aplicación algún permiso especial para poder hacerlo.
Por aquí también información de Android, que te puede dar pistas de por dónde buscar.

Para iOS también puedes encontrar alguna cosa por aquí.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #13  
Antiguo 24-11-2015
Avatar de mamcx
mamcx mamcx is offline
Moderador
 
Registrado: sep 2004
Ubicación: Medellín - Colombia
Posts: 3.911
Poder: 25
mamcx Tiene un aura espectacularmamcx Tiene un aura espectacularmamcx Tiene un aura espectacular
Cita:
Empezado por Casimiro Notevi Ver Mensaje
Por eso digo que si es a modo didáctico o para "carreras entre amigos", sí. Pero profesionalmente, no sirve.
De hecho me arriesgo a especular que no sirve ni de forma amateur.

Correccion, CONFIRMO: Probe con un iPhone 6 (que tendra un GPS mejor que muchos androids) y ni a palos es la forma de hacer esto.

1- GPS en espacios cerrados es bien conocido que no tienen precision, e incluso por fuera:

http://www.gps.gov/systems/gps/performance/accuracy/

Que se traduce, por ejemplo, en las mejores condicione posibles (cielo abierto y claro) en algo asi como +/- 10 mts de precision, y no se garantiza que sea asi.

Hice un recorrido con el iPhone por mi casa (del tamaño de una pista de karts dentro de un edificio) y ademas que no siempre es preciso, hay un lag notable entre donde estoy y donde reporta.

La solucion es usar "indoor positioning".

http://techcrunch.com/2014/06/05/app...ng-with-ios-8/

Es maso simple el concepto:

1- Tienes GPS
2- Pero ademas tienes sensores internos (los que determinan que has girado el aparato, por ejemplo) que puedes usar para triangular desde un punto fijo y conocido, lo cual haria mas preciso todo. En el caso de los modelos nuevos de iPhone, tienen un co-procesador dedicado para esto

en iPhone hay el sistema de iBeacons que convierte el aparato en un punto de esos y transmite usando Bluethoot, y tambien se usa para estas cosas.

Deberas chequear que modelos de android darian para esto (o usar iPhones)

Asi que la solucion es usar triangulacion desde un punto fijo, y cambiar de GPS a beacons o calcular usando los sensores de movimiento del aparato. No es tan dificil como suena... (o al menos no en iOS. No manejo tanto android como pa saber exactamente por donde dirigirte )
__________________
El malabarista.
Responder Con Cita
  #14  
Antiguo 24-11-2015
Avatar de movorack
[movorack] movorack is offline
Miguel A. Valero
 
Registrado: feb 2007
Ubicación: Bogotá - Colombia
Posts: 1.346
Poder: 20
movorack Va camino a la famamovorack Va camino a la fama
De todos modos aquí tienes un link donde hablan de como mantener la pantalla encendida.

http://stackoverflow.com/questions/8...ut-my-activity
__________________
Buena caza y buen remar... http://mivaler.blogspot.com
Responder Con Cita
  #15  
Antiguo 24-11-2015
Avatar de jhonny
jhonny jhonny is offline
Jhonny Suárez
 
Registrado: may 2003
Ubicación: Colombia
Posts: 7.058
Poder: 29
jhonny Va camino a la famajhonny Va camino a la fama
Cita:
Empezado por mamcx Ver Mensaje
Asi que la solucion es usar triangulacion desde un punto fijo, y cambiar de GPS a beacons o calcular usando los sensores de movimiento del aparato. No es tan dificil como suena... (o al menos no en iOS. No manejo tanto android como pa saber exactamente por donde dirigirte )
No tengo mucho para aportar aparte de lo que ya se ha comentado en este hilo, solamente decir que estoy de acuerdo con que sería mejor usar Beacons, de hecho las últimas versiones de Delphi tienen unos componentes que hacen facil la programación de los mismos, incluso han desarrollado una herramienta llamada BeaconFence muy interesante para estos casos http://www.embarcadero.com/es/products/beaconfence, quizá te sirva de algo.
__________________
Lecciones de mi Madre. Tema: modificación del comportamiento, "Pará de actuar como tu padre!"

http://www.purodelphi.com/
http://www.nosolodelphi.com/
Responder Con Cita
  #16  
Antiguo 24-11-2015
Avatar de AgustinOrtu
[AgustinOrtu] AgustinOrtu is offline
Miembro Premium
NULL
 
Registrado: ago 2013
Ubicación: Argentina
Posts: 1.858
Poder: 15
AgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en bruto
En teoria hay un componente que permite convertir cualquier aparato en un Beacon

Ver TBeaconDevice y Using Beacons

Obvio que ese "aparato" tiene que tener Bluetooth.

Despues es cuestion de obtener y transmitir la data, pero la parte de broadcasting ya estaria resuelta
Responder Con Cita
  #17  
Antiguo 27-11-2015
Kalikatres Kalikatres is offline
Miembro
 
Registrado: abr 2010
Posts: 6
Poder: 0
Kalikatres Va por buen camino
Hola a todos!

Sigo en ello. Ya lo he probado y el GPS me da la suficiente precisión para lo que quiero, así que sigo adelante.

Veo que el form tiene un evento 'OnSaveState' que me anticipa que la pantalla se va a apagar y que la app pasa a segundo plano, así puedo guardar datos si es pertinente. ¿Se os ocurre como mandar la pantalla a primer plano y encender la misma?

Gracias a todos por la paciencia de aguantarme el rollo este.

Última edición por Kalikatres fecha: 27-11-2015 a las 12:30:48. Razón: Nuevas pruebas
Responder Con Cita
  #18  
Antiguo 27-11-2015
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.233
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Por lo que vi en la demo del otro día, creo que la precisión de beacons y la velocidad de respuesta tampoco sería aceptable para la situación que estamos tratando.

Para ir caminando y detectando diferentes sensores sí, pero para velocidades más altas creo que no. Habría que ver si hay sensores con más precisión.


Mirad este ejemplo, que han realizado la gente de Embarcadero en Elche, para mostrar el funcionamiento de beaconfence. A partir del minuto 41:30 hacen un recorrido por su propia oficina con un plano y en la parte superior se ve cómo se hace la detección del movimiento sobre el propio plano (nos la hicieron en persona en Barcelona).

La detección es bastante exacta (contando que tienen bastantes sensores) pero tiene algo de "delay".
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.

Última edición por Neftali [Germán.Estévez] fecha: 27-11-2015 a las 13:31:06.
Responder Con Cita
  #19  
Antiguo 28-11-2015
Kalikatres Kalikatres is offline
Miembro
 
Registrado: abr 2010
Posts: 6
Poder: 0
Kalikatres Va por buen camino
He encontrado una solución, no es muy elegante pero funciona hasta que me pueda meter más a fondo con el tema.

Hay una APP en Android llamada Stay Alive con la que puedes programar el comportamiento de la pantalla según la aplicación que arranques.

No es lo mejor, pero por lo menos sigo adelante.

Gracias a todos.
Responder Con Cita
  #20  
Antiguo 28-11-2015
Avatar de AgustinOrtu
[AgustinOrtu] AgustinOrtu is offline
Miembro Premium
NULL
 
Registrado: ago 2013
Ubicación: Argentina
Posts: 1.858
Poder: 15
AgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en bruto
Cita:
Empezado por Kalikatres Ver Mensaje
Veo que el form tiene un evento 'OnSaveState' que me anticipa que la pantalla se va a apagar y que la app pasa a segundo plano, así puedo guardar datos si es pertinente. ¿Se os ocurre como mandar la pantalla a primer plano y encender la misma?
Es que no me termina de cerrar lo que queres hacer

Si yo estoy con mi "cacharro Android" usando tu aplicacion, y quiero mandarla a segundo plano para leer un WhatsApp, vos me lo queres impedir mandando tu app a primer plano?? Como hago para salir de tu programa? Estoy de acuerdo con mamcx, no es lo esperado y encima muy hostil

No deberias "mantener siempre en primer plano algo" en ninguna plataforma, en ningun sistema operativo, porque eso es algo que maneja el usuario, cuando yo tengo ganas de leer este foro, traigo a primer plano el Chrome y leo el foro, imaginate como seria si Delphi no me deja minimizar o se "pone en primer plano" y yo no puedo entrar al foro

Lo de mantener la pantalla encendida es otra cosa totalmente distinta y en este caso si podria llegar a ser algo deseable, por ejemplo los reproductores lo hacen y algunos lectores de archivos tambien. Han dejado algunos enlaces por ahi arriba, ninguno sirve?
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
2 Form Siempre En Primer Plano FrianxD C++ Builder 16 15-01-2008 23:41:02
Aplicación en primer plano jordillussa Varios 4 20-03-2007 20:58:43
Ejecutar aplicacion externa y que este en primer plano Lorenzati API de Windows 11 06-07-2004 19:22:10
Dejar una ventana en segundo plano inactiva vhirginia Varios 7 22-04-2004 14:46:43
Aplicación siempre en primer plano Novás Varios 2 08-03-2004 10:31:09


La franja horaria es GMT +2. Ahora son las 03:42:55.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi